我使用以下代码来更改产品有库存和缺货时的文本,效果非常好。但无论我如何调整代码,我都无法使其更改延期交货文本,它似乎被现有代码覆盖了。
我如何调整此代码片段,以便也能够调整缺货 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;
}
首先尝试降低优先级,因为其他插件可能会覆盖您的文本。 尝试使用
<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 代码。
您可以使用以下内容:
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');
}