向 Woocommerce 产品可用性添加自定义文本,并为购物车项目显示它
Add a custom text to Woocommerce product availability and display it for cart items
我正在尝试找到一种方法,在 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;
}
它基于:。
如果我的代码 "unknown filter" 中指定的价格过滤器是 woocommerce_cart_item_price
。我已经为 availability/stock 项寻找这种过滤器,但找不到。
也许有人可以查看此代码并帮助我找到这个“unknown_filter
”或者有其他想法如何在可用性信息之前放置自定义文本?
我已经重新访问了您的代码,因为您正在尝试将字符串与数组合并。
我还添加了第二个挂钩函数,可以显示您的 "labeled" 购物车和结帐商品的可用性。
代码:
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 文件。
已测试并有效。
我正在尝试找到一种方法,在 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;
}
它基于:
如果我的代码 "unknown filter" 中指定的价格过滤器是 woocommerce_cart_item_price
。我已经为 availability/stock 项寻找这种过滤器,但找不到。
也许有人可以查看此代码并帮助我找到这个“unknown_filter
”或者有其他想法如何在可用性信息之前放置自定义文本?
我已经重新访问了您的代码,因为您正在尝试将字符串与数组合并。
我还添加了第二个挂钩函数,可以显示您的 "labeled" 购物车和结帐商品的可用性。
代码:
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 文件。
已测试并有效。