WooCommerce replace quot;Available on backorderquot; in cart/checkout based on product category(WooCommerce根据产品类别在购物车/结账时的积压订单和结账上提供替换(Q))
本文介绍了WooCommerce根据产品类别在购物车/结账时的积压订单和结账上提供替换(&Q)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我编写了一些代码,用于在基于产品类别的产品详细信息页面上显示定制的缺货消息。
function custom_backorder_message( $text, $product ){
if ( $product->managing_stock() && $product->is_on_backorder( 1 ) ) {
if( has_term( 'bridal-line', 'product_cat' ) ) {
$text = __( 'Your piece will be handcrafted for you. Upon order we will manufacture your piece of eternity. Sadly, we can not give you a timeline, due to Covid 19, but are expecting 5-7 weeks', 'text-domain' );
}else {
$text = __( 'This product is currently out of stock, but upon order we will handcraft your piece. Sadly, we can not give you a timeline, due to Covid 19, but are expecting 6-8 week.', 'text-domain' );
}
}
return $text;
}
add_filter( 'woocommerce_get_availability_text', 'custom_backorder_message', 10, 2 );
现在,购物车页面上会显示"Available on Backorder"。如何在那里显示正确的延交消息?
如有任何帮助,我们将不胜感激!
推荐答案
使用:woocommerce_cart_item_backorder_notification
注意,第三个参数($product_id
)由has_term
指定, 这是因为默认使用当前帖子(ID)。但是,如果购物车中有多个产品,则会有多个ID...
// Change backorder notification - Single product page
function custom_availability_text( $text, $product ) {
// Returns whether or not the product is stock managed.
if ( $product->managing_stock() && $product->is_on_backorder( 1 ) ) {
// Check if the current post has any of given terms.
if( has_term( 'bridal-line', 'product_cat' ) ) {
$text = __( 'My first text', 'woocommerce' );
} else {
$text = __( 'My second text', 'woocommerce' );
}
}
return $text;
}
add_filter( 'woocommerce_get_availability_text', 'custom_availability_text', 10, 2 );
// Change backorder notification - Shop page
function custom_cart_item_backorder_notification( $html, $product_id ){
// Check if the current post has any of given terms.
if ( has_term( 'bridal-line', 'product_cat', $product_id ) ) {
$html = '<p class="backorder_notification">' . esc_html__( 'My first text', 'woocommerce' ) . '</p>';
} else {
$html = '<p class="backorder_notification">' . esc_html__( 'My second text', 'woocommerce' ) . '</p>';
}
return $html;
}
add_filter( 'woocommerce_cart_item_backorder_notification', 'custom_cart_item_backorder_notification', 10, 2 );
这篇关于WooCommerce根据产品类别在购物车/结账时的积压订单和结账上提供替换(&Q)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:WooCommerce根据产品类别在购物车/结账时的积压订单和结账上提供替换(&Q)
基础教程推荐
猜你喜欢
- 在 PHP 中强制下载文件 - 在 Joomla 框架内 2022-01-01
- 在 Woocommerce 中根据运输方式和付款方式添加费用 2021-01-01
- XAMPP 服务器不加载 CSS 文件 2022-01-01
- 如何在 PHP 中的请求之间持久化对象 2022-01-01
- 通过 PHP SoapClient 请求发送原始 XML 2021-01-01
- 超薄框架REST服务两次获得输出 2022-01-01
- mysqli_insert_id 是否有可能在高流量应用程序中返回 2021-01-01
- WooCommerce 中选定产品类别的自定义产品价格后缀 2021-01-01
- Libpuzzle 索引数百万张图片? 2022-01-01
- 在多维数组中查找最大值 2021-01-01