将自定义文本添加到Woocommerce产品可用性并显示为购物车项目

时间:2018-02-14 22:40:02

标签: php wordpress woocommerce product stock

我试图在woocommerce单品页面上找到一种在可用性信息(缺货,库存等)之前放置自定义文本的方法。

我正在使用类似的东西:

add_filter( 'woocommerce_get_availability', 'change_product_availability_display' ); 
add_filter( 'unknown filter', 'change_product_availability_display' );
function change_product_availability_display( $availability ) {
    // Additional text 
    $text = __('Availability:'); 
    // returning the text before the availability 
    return $text . ' ' . $availability; 
}

它基于:Add a custom text before the price display in WooCommerce

如果我的代码中指定了价格过滤器"未知过滤器"是woocommerce_cart_item_price。我已经为可用性/库存项目寻找这种过滤器,但无法找到它。

也许有人可以查看此代码并帮助我找到这个" unknown_filter"或者有其他想法如何在可用性信息之前放置自定义文本?

1 个答案:

答案 0 :(得分:0)

我正在尝试将字符串与数组合并,因此我重新访问了您的代码。
另外,我添加了第二个挂钩功能,可以显示购物车和结帐中物品的“标签”可用性。

代码:

add_filter( 'woocommerce_get_availability', 'add_label_to_availability_display' );
function add_label_to_availability_display( $availability ) {
    if( is_product() || is_cart() || is_checkout() ){
        $label = __( 'Availability', 'woocommerce' ) . ': ';
        $availability['availability'] = $label . $availability['availability'];
    }
    return $availability;
}

add_filter( 'woocommerce_cart_item_name', 'add_availability_below_cart_item_name', 10, 3);
function add_availability_below_cart_item_name( $item_name, $cart_item, $cart_item_key ) {
    $availability = $cart_item['data']->get_availability();
    return $item_name . '<br>' . $availability['availability'];
}

代码进入活动子主题(活动主题)的function.php文件。

经过测试和工作。