在 WooCommerce 中库存不足时更改库存消息
Change stock message when stock is low in WooCommerce
如果库存低于 4,我正在尝试更改单个产品页面上的库存消息数量,否则显示默认消息。
我想要的:当库存低于 4(例如 3)时,我想显示“低库存”而不是“3 库存”。
我想我需要添加一个过滤器来修改那里显示但不确定的内容。我在网上找到了一个代码,它似乎与我正在寻找的代码很接近,但我不知道缺少什么才能让它工作。
function load_variation_settings_fields( $variation_data, $product, $variation ) {
$qty->get_stock_quantity()
if( $variation-> $qty < 3 )
$variation_data['text_field'] = __('Low stock');
else $variation_data['text_field'] = __($qty . 'in stock');
return $variation_data; }
你能帮我编写正确的 PHP 代码来实现这个功能吗?
非常感谢。
杰夫
您可以使用 woocommerce_get_availability
来实现,如下所示:
add_filter( 'woocommerce_get_availability', 'change_stock_text', 20, 2 );
function change_stock_text( $availability, $_product ) {
if ( $_product->is_in_stock() ) {
if ( $_product->get_stock_quantity() < 4 ) {
$qty = $_product->get_stock_quantity();
$availability['availability'] = __( "{$qty} Low Stock", 'woocommerce' );
}
}
return $availability;
}
输出:
如果库存低于 4,我正在尝试更改单个产品页面上的库存消息数量,否则显示默认消息。
我想要的:当库存低于 4(例如 3)时,我想显示“低库存”而不是“3 库存”。
我想我需要添加一个过滤器来修改那里显示但不确定的内容。我在网上找到了一个代码,它似乎与我正在寻找的代码很接近,但我不知道缺少什么才能让它工作。
function load_variation_settings_fields( $variation_data, $product, $variation ) {
$qty->get_stock_quantity()
if( $variation-> $qty < 3 )
$variation_data['text_field'] = __('Low stock');
else $variation_data['text_field'] = __($qty . 'in stock');
return $variation_data; }
你能帮我编写正确的 PHP 代码来实现这个功能吗?
非常感谢。
杰夫
您可以使用 woocommerce_get_availability
来实现,如下所示:
add_filter( 'woocommerce_get_availability', 'change_stock_text', 20, 2 );
function change_stock_text( $availability, $_product ) {
if ( $_product->is_in_stock() ) {
if ( $_product->get_stock_quantity() < 4 ) {
$qty = $_product->get_stock_quantity();
$availability['availability'] = __( "{$qty} Low Stock", 'woocommerce' );
}
}
return $availability;
}
输出: