更改延期交货文本 WooCommerce

问题描述 投票:0回答:2

我使用以下代码来更改产品有库存和缺货时的文本,效果非常好。但无论我如何调整代码,我都无法使其更改延期交货文本,它似乎被现有代码覆盖了。

我如何调整此代码片段,以便也能够调整缺货 tetx 来表示“5 天交货,缺货”

add_filter( 'woocommerce_get_availability', 'wcs_custom_get_availability', 1, 2);
function wcs_custom_get_availability( $availability, $_product ) {
    
    // Change text if in stock
    if ( $_product->is_in_stock() ) {
        $availability['availability'] = __('<div class="breadcrumbsstockstatus">På lager</div><div class="breadcrumbsstockinfo">Levering 1-2 hverdage</div>', 'woocommerce');
    }
    // Change text if out of stock
    if ( ! $_product->is_in_stock() ) {
        $availability['availability'] = __('Ikke på lager - kommer igen', 'woocommerce');
    }
    return $availability;
}

php html wordpress woocommerce
2个回答
0
投票

首先尝试降低优先级,因为其他插件可能会覆盖您的文本。 尝试使用

<span>
而不是
<div>

add_filter( 'woocommerce_get_availability', 'wcs_custom_get_availability', 10, 2);

然后尝试这个插件:https://wordpress.org/plugins/say-what/

Ps:将此代码放在函数的第一行:

if( is_admin() ) {return $availability; }

如果你想翻译这行:

$availability['availability'] = __('<div class="breadcrumbsstockstatus">På lager</div><div class="breadcrumbsstockinfo">Levering 1-2 hverdage</div>', 'woocommerce');

更改为

$availability['availability'] = '<div class="breadcrumbsstockstatus">' . __('På lager', 'woocommerce') . '</div><div class="breadcrumbsstockinfo">' . __('Levering 1-2 hverdage', 'woocommerce') . '</div>';

因为我认为您不想只翻译 HTML 代码。


0
投票

您可以使用以下内容:

    if ( $availability['class'] == 'available_on_backorder' ) {
    
    $availability['availability'] = __('<span style="font-weight:bold;font-size:14px;">Beschikbaar via nabestelling!<br>Levering 1-2 weken</span>', 'woocommerce');
}
© www.soinside.com 2019 - 2024. All rights reserved.