更改 WooCommerce 添加到特定标签的购物车文本

Change WooCommerce add to cart text for specific tag

我正在寻找一种功能来更改 woocommerce 按钮上的“添加到购物车”文本,但前提是相关产品具有特定标签。即,如果产品具有标签 "preorder",则按钮文本会更改为 "Pre Order Now"

全局更改文本可以用这个实现;

http://docs.woothemes.com/document/change-add-to-cart-button-text/

谢谢。

已经有一段时间了,但请按照以下几行尝试:

<?php
add_filter( 'woocommerce_product_add_to_cart_text' , 'custom_woocommerce_product_add_to_cart_text' );
/**
* custom_woocommerce_template_loop_add_to_cart
*/
function custom_woocommerce_product_add_to_cart_text() {

global $product;

$product_tag = $product->product_tag;

switch ( $product_tag ) { 
  case 'preorder':
    return __( 'Pre order Now!', 'woocommerce' );
  break;
  default:
    return __( 'Add to cart', 'woocommerce' );
    }
}

基本上,您要做的是执行条件检查产品标签是否为 "preorder"。如果有多个标签,我不确定这个确切的代码是否有效。

编辑: 您可能必须使用此过滤器才能在产品页面上更改它

add_filter( 'woocommerce_product_single_add_to_cart_text', 'woo_custom_cart_button_text' ); 

您可以使用 has_term 检查该特定字词。

    //For single product page
    add_filter( 'woocommerce_product_single_add_to_cart_text', 'woo_custom_cart_button_text' ); // 2.1 +
    function woo_custom_cart_button_text() {
        global $product;
        if ( has_term( 'preorder', 'product_cat', $product->ID ) ) :
            return __( 'Pre order Now!', 'woocommerce' );
        endif;
    }
    //For Archive page
    add_filter( 'woocommerce_product_add_to_cart_text', 'woo_archive_custom_cart_button_text' ); // 2.1 +
    function woo_archive_custom_cart_button_text() {
        if ( has_term( 'preorder', 'product_cat', $product->ID ) ) :
            return __( 'Pre order Now!', 'woocommerce' );
        else:
            return __( 'Add to Cart', 'woocommerce' );
        endif;
    }  

让我知道输出结果。

您可以通过在 functions.php 中添加几行代码来修复它:

// Change the add to cart text on single product pages

add_filter( 'woocommerce_product_single_add_to_cart_text’, ‘woo_custom_cart_button_text' ); // 2.1 +

function woo_custom_cart_button_text() {
    return __( 'ADD TO CART', 'woocommerce' );
}

//Change the add to cart text on product archives
add_filter( 'woocommerce_product_add_to_cart_text', 'woo_archive_custom_cart_button_text' ); // 2.1 +

function woo_archive_custom_cart_button_text() {
    return __( 'ADD TO CART', 'woocommerce' );
}

http://visupporti.com/woocommerce-how-to-change-add-to-cart-text/