首页 > 解决方案 > 产品列为“允许延期交货”但显示为“有货”

问题描述

我的网站上有产品我想显示为“On Order”</p>

我已将这些项目列为“允许延期交货”,但仍显示为“有货”,当我降低库存阈值时,它显示为“缺货”。

当一个项目被列为延期交货时,有没有办法显示自定义可用性?示例:而不是“缺货”显示“订购中 - 请等待 2 到 3 周交货”?

谢谢

标签: wordpresswoocommercestock

解决方案


您需要连接到 woocommerce_get_availability 以更改文本“缺货”。

请在您的 function.php 文件中尝试此代码。

add_filter('woocommerce_get_availability', 'availability_on_order');
function availability_on_order($availability){
    $availability['availability'] = str_ireplace('Out of stock', 'On Order', $availability['availability']);
    return $availability;
}

至于延期交货 - 您是否勾选了“在产品级别启用库存管理”复选框?

添加了第二个脚本,因为注释无法格式化。

add_filter( 'woocommerce_get_availability', 'wcs_custom_get_availability', 1, 2); 
function wcs_custom_get_availability( $availability, $_product ) { 
   // Change In Stock Text 
   if ( $_product->is_in_stock() ) { $availability['availability'] = __('Available!', 'woocommerce'); } 
   // Change Out of Stock Text 
   if ( ! $_product->is_in_stock() ) { $availability['availability'] = __('On Order', 'woocommerce'); } 
   return $availability; 
}

推荐阅读