在 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;
}

输出: