Woocommerce 更改可变产品上的缺货文本

Woocommerce 更改可变产品上的缺货文本,woocommerce,hook-woocommerce,Woocommerce,Hook Woocommerce,我正在用Woocommerce创建一个Wordpress网站,并使用可变产品。我知道如何更改产品变体的缺货文本,但我想知道当我根本没有添加变体时如何更改缺货文本(即,将产品类型设置为variable product,并且不添加变体) 目前,默认显示的文本是:“此产品目前缺货且不可用。” 我该如何更改该文本 使用gettext过滤器很容易实现这一点 function modify_gettext( $translated_text, $text, $domain ) { switch (

我正在用Woocommerce创建一个Wordpress网站,并使用可变产品。我知道如何更改产品变体的缺货文本,但我想知道当我根本没有添加变体时如何更改缺货文本(即,将产品类型设置为variable product,并且不添加变体)

目前,默认显示的文本是:“此产品目前缺货且不可用。”

我该如何更改该文本


使用gettext过滤器很容易实现这一点

function modify_gettext( $translated_text, $text, $domain ) {
    switch ( $translated_text ) {
        case 'This product is currently out of stock and unavailable.' :
            $translated_text = __( 'This is my new out of stock text', 'woocommerce' );
            break;
    }
    return $translated_text;
}

add_filter( 'gettext', 'modify_gettext', 20, 3 );

使用gettext过滤器很容易实现这一点

function modify_gettext( $translated_text, $text, $domain ) {
    switch ( $translated_text ) {
        case 'This product is currently out of stock and unavailable.' :
            $translated_text = __( 'This is my new out of stock text', 'woocommerce' );
            break;
    }
    return $translated_text;
}

add_filter( 'gettext', 'modify_gettext', 20, 3 );

另一种方法是通过以下方式使用专用WC过滤器挂钩:

add_filter( 'woocommerce_get_availability', 'change_specific_out_of_stock_availability', 20, 1 );
function change_specific_out_of_stock_availability( $availability ) {
    $targeted_text = ('This product is currently out of stock and unavailable.', 'woocommerce');

    if( $availability['class'] == 'out-of-stock' && $availability['availability'] == $targeted_text )
        $availability['availability'] = __('Custom "Out of stock" notice', 'woocommerce');

    return $availability;
}
此代码位于活动子主题(或主题)的function.php文件中


已测试并正常工作。

另一种方法是使用专用WC过滤器挂钩
woocommerce\u get\u availability
如下:

add_filter( 'woocommerce_get_availability', 'change_specific_out_of_stock_availability', 20, 1 );
function change_specific_out_of_stock_availability( $availability ) {
    $targeted_text = ('This product is currently out of stock and unavailable.', 'woocommerce');

    if( $availability['class'] == 'out-of-stock' && $availability['availability'] == $targeted_text )
        $availability['availability'] = __('Custom "Out of stock" notice', 'woocommerce');

    return $availability;
}
此代码位于活动子主题(或主题)的function.php文件中


经过测试,效果良好。

干杯,安德鲁!很好用!您可以对WordPress和WooCommerce中的几乎所有文本使用此过滤器。不客气,干杯,安德鲁!很好用!您可以对WordPress和WooCommerce中的几乎所有文本使用此过滤器。不客气。