首页 文章

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

提问于
浏览
1

我正在寻找一个功能来更改woocommerce按钮上的添加到购物车文本,但仅当相关产品具有特定标签时 . 即如果产品的标签为“预订”,则按钮文字将变为“预订即时”

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

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

谢谢 .

3 回答

  • 0

    您可以使用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;
        }
    

    让我知道输出 .

  • 0

    已经有一段时间了,但尝试以下几点:

    <?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' );
        }
    }
    

    基本上你要做的是做一个条件,你检查产品标签是否是“预订” . 如果有多个标签,我不确定这个确切的代码是否可行 .

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

    add_filter( 'woocommerce_product_single_add_to_cart_text', 'woo_custom_cart_button_text' );
    
  • 2

    您可以通过在 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/

相关问题