首页 > 解决方案 > Woocommerce:根据运输类别在结帐页面的产品下显示自定义文本

问题描述

我发现这个功能在购物车页面上运行良好,但我也想在结帐页面上使用它,我需要修改什么才能让它在那里工作?提前致谢!

// Display a custom text under cart item name in cart page
add_filter( 'woocommerce_cart_item_name', 'custom_text_cart_item_name', 10, 3 );
function custom_text_cart_item_name( $item_name, $cart_item, $cart_item_key ) {
    // Only on cart page
    if( ! is_cart() ) 
        return $item_name;

    // Here below define your shipping classes slugs (one by line)
    $shipping_class_1 = '5-gallon';
    $shipping_class_2 = '10-gallon';

    $shipping_class   = $cart_item['data']->get_shipping_class();

    // First shipping class
    if( $shipping_class === $shipping_class_1 ) {
        $item_name .= '<br /><div class="item-shipping-class">' . __("Please call confirm shipping rates", "woocommerce") . '</div>';
    }
    // 2nd shipping class
    elseif( $shipping_class === $shipping_class_2 ) {
        $item_name .= '<br /><div class="item-shipping-class">' . __("Some different message…", "woocommerce") . '</div>';
    }

    return $item_name; 
}

标签: wordpressfunctionwoocommerce

解决方案


嘿,如果你想在两个页面上都检查购物车页面,为什么只检查购物车页面?

只需检查两者。

if( ! ( is_cart() || is_checkout()) ) 
    return $item_name;

于是代码就变成了。

add_filter( 'woocommerce_cart_item_name', 'bks_custom_text_cart_item_name', 10, 3 );
function bks_custom_text_cart_item_name( $item_name, $cart_item, $cart_item_key ) {

    if( ! ( is_cart() || is_checkout()) ) // CHANGE HERE
        return $item_name;


    $shipping_class_1 = '5-gallon';
    $shipping_class_2 = '10-gallon';

    $shipping_class   = $cart_item['data']->get_shipping_class();

    if( $shipping_class === $shipping_class_1 ) {
        $item_name .= '<br /><div class="item-shipping-class">' . __("Please call confirm shipping rates", "woocommerce") . '</div>';
    }
    elseif( $shipping_class === $shipping_class_2 ) {
        $item_name .= '<br /><div class="item-shipping-class">' . __("Some different message…&quot;, "woocommerce") . '</div>';
    }

    return $item_name;
}

结账截图:

在此处输入图像描述


推荐阅读