我正在运行WooCommerce版本2.5.5。以下代码行似乎不会更改产品页面上的“添加到购物车”按钮文本,以查找包含变体的项目:
add_filter('variable_add_to_cart_text', 'my_custom_cart_button_text');
function my_custom_cart_button_text() {
return __('Buy Now', 'woocommerce');
}
你碰巧知道我错过了什么吗?
答案 0 :(得分:4)
WooCommerce 3+的更新
您正在使用WooCommerce 之前版本2.1的过时钩子(请参见reference)的底部。
首先,您可以在具有以下条件的(新)挂钩中定位所需的产品类型:
global $product;
if ( $product->is_type( 'simple' ) ) // for simple product
// Your text for simple product
if ($product->is_type( 'variable' ) ) // for variable product
// Your text for variable product
if ($product->is_type( 'grouped' ) ) // for grouped product
// Your text for grouped product
if ($product->is_type( 'external' ) ) // for external product
// Your text for external product
现在您有 2个可用于Woocommerce的挂钩:
add_filter( 'woocommerce_product_single_add_to_cart_text', 'my_custom_cart_button_text', 10, 2 );
add_filter( 'woocommerce_product_add_to_cart_text', 'my_custom_cart_button_text', 10, 2 );
通过变量产品类型条件,您将使用其中一个或两个定制功能定位,这样:
function my_custom_cart_button_text( $button_text, $product ) {
if ( $product->is_type( 'variable' ) )
$button_text = __('Buy Now', 'woocommerce');
return $button_text
}
您还可以按产品类型设置自定义按钮文字:See here。
答案 1 :(得分:4)
单个商品页面的正确过滤条件为woocommerce_product_single_add_to_cart_text
。
function my_custom_cart_button_text( $text, $product ) {
if( $product->is_type( 'variable' ) ){
$text = __('Buy Now', 'woocommerce');
}
return $text;
}
add_filter( 'woocommerce_product_single_add_to_cart_text', 'my_custom_cart_button_text', 10, 2 );