php - Woocommerce - 根据某些条件更改添加到购物车按钮文本
问题描述
我需要来自这里的经验丰富的程序员的帮助...我有一个销售蒙台梭利 PDF、课程、博客等的网站 - 由我从头开始制作。可在以下网址查看:https ://insideoutmontessori.ro/
我的问题是添加到购物车按钮 - 我想根据条件显示不同的文本 - 而不是:) 让我解释一下......
我使用一个片段来修改添加到购物车按钮文本(CUMPRA - 表示购买英文) - 这已经通过以下代码完成:
add_filter( 'woocommerce_product_single_add_to_cart_text', 'woocommerce_custom_single_add_to_cart_text' );
add_filter( 'woocommerce_product_add_to_cart_text', 'woocommerce_custom_product_add_to_cart_text' );
// To change add to cart text on single product page
function woocommerce_custom_single_add_to_cart_text() {
if ( ! is_admin()) {
return __( 'Cumpără', 'woocommerce' );
}
}
// To change add to cart text on product archives(Collection) page
function woocommerce_custom_product_add_to_cart_text() {
if ( ! is_admin()) {
return __( 'Cumpără', 'woocommerce' );
}
}
我曾经把一个产品没有价格,宣布下一个 PDF - 就像一个预告片。现在不活跃是因为 o 暂时不为新事物工作。为此,我设法将价格更改为“In lucru” - 表示英语正在进行中 - 但我没有设法将按钮文本从 CUMPRA 更改为 VEZI DETALII(表示英语中的更多细节)。该产品不可购买,我无法使用此条件更改按钮文本...
另外 - 对于已经添加到购物车的产品,我想将添加到购物车按钮文本更改为 ADAUGAT IN COS - 表示英语中的已添加到购物车 - 当用户返回所有产品页面并浏览它们时。我之前设法做到这一点(下面的代码有效,但是......)但我收到了一些错误(严重错误),并且在更改代码后,当我尝试保存时,我在编辑器中仅收到带有红色框中的 JSON 消息页面女巫包含 woocommerce 短代码...我停用此代码段以丢失错误。
代码如下:
add_filter('woocommerce_product_add_to_cart_text', 'wc_product_add_to_cart_text', 10, 2 );
add_filter('woocommerce_product_single_add_to_cart_text', 'wc_product_add_to_cart_text', 10, 2 );
function wc_product_add_to_cart_text( $text, $product ){
if ( ! is_admin()) {
$product_cart_id = WC()->cart->generate_cart_id( $product->get_id() );
$in_cart = WC()->cart->find_product_in_cart( $product_cart_id );
if ( $in_cart ) {
$text = "Adăugat în coș";
}
return $text;
}
}
所以 - 底线是我需要一个片段来根据这三个条件同时更改“添加到购物车”按钮文本:
- 如果产品在购物车中 - 按钮将显示:Adaugat in cos(已在购物车中)
- 如果产品没有价格 - 按钮将显示:Vezi detalii(查看更多详细信息)
- 否则 - 按钮将显示:Cumpara(购买)
我认为这是正确的方法 - 我的意思是这需要使用一个更改按钮文本的功能来完成,这取决于这三个条件。
谢谢!
解决方案
推荐阅读
- reactjs - 海图 | 网络图 - 有没有办法在单击父节点时展开叶节点?
- python - python中是否有一个随机函数可以在一定范围内获得公平的结果?
- ios - iOS 模拟器在添加 Crashlytics 并强制使应用程序崩溃后卡在启动屏幕上
- macos - 在 virtualbox 上配置 macOS 虚拟机时出现未知配置值“/DmisystemVersion”
- postgresql - 当连接数增加时,PgBouncer 性能下降
- puppeteer - 木偶戏中的自动播放
- c++ - 返回带有自定义比较器的 std::set
- postgresql - 如何使用spring在postgres中插入json数据
- r - 将数字年份添加到数字月份
- r - 在 R 中绘制 p 密度与正面概率