Изменить сообщение о задержке в WooCommerce

Так что здесь идет …
У меня есть сайт WordPress, я использую woocommerce и т. Д. И т. Д. Я хочу изменить сообщение о задержке заказа на страницах продукта на что-то вроде «пожалуйста, подождите 2–4 недели для доставки этого товара», с которыми у меня возникают проблемы.

Я также хочу, чтобы такое же или подобное сообщение отображалось на странице корзины покупок, где сообщение с задержкой заказа обычно отображается под названием товара.

В качестве альтернативы, но не в моих предпочтениях, просто полностью скрыть сообщение о задержке заказа на странице корзины, но все же оставить его на странице продукта.

Я ввожу php-код через плагин, а не использую дочернюю тему или занимаюсь другими делами. Я обычно справляюсь нормально, но совершенно в замешательстве. Я потратил часы на это вчера и сумел сломать мой сайт и все! лол…

Я думаю, что это дало бы намного более профессиональный взгляд на мой сайт.

Ссылка на один из продуктов, размещенных на моем сайте, находится ниже, чтобы вы могли видеть именно то, что я ищу.

https://ascentsofscotland.co.uk/product/cormag-celtic-bangle/

Любая помощь очень ценится с этим, так как я начинаю расстраиваться из-за чего-то, что в теории должно быть простым … (я думаю, что на самом деле это должна быть настраиваемая часть в woocommerce!)

Заранее спасибо всем вам, гениальные люди!

Stu

1

Решение

Я думаю, вам нужно отфильтровать woocommerce_get_availability_text. Добавьте это к вашей теме functions.php или для специфичного для сайта плагина «snippets».

function so_42345940_backorder_message( $text, $product ){
if ( $product->managing_stock() && $product->is_on_backorder( 1 ) ) {
$text = __( 'Please allow 2 – 4 weeks for delivery of this item', 'your-textdomain' );
}
return $text;
}
add_filter( 'woocommerce_get_availability_text', 'so_42345940_backorder_message', 10, 2 );
8

Другие решения

Вот все в одном, которое работает как на странице продукта, так и в корзине (я использую бесплатный плагин «Code Snippets», чтобы справиться с этим вместо того, чтобы возиться с файлами functions.php):

function alt_message() {
return "This item may take 3-4 weeks to deliver";
}

function backorder_text($availability) {
$altmessage = alt_message();
foreach($availability as $i) {
$availability = str_replace('Available on backorder', $altmessage, $availability);
}
return $availability;
}
add_filter('woocommerce_get_availability', 'backorder_text');function woocommerce_custom_cart_item_name( $_product_title, $cart_item, $cart_item_key ) {
$altmessage = alt_message();
if ( $cart_item['data']->backorders_require_notification() && $cart_item['data']->is_on_backorder( $cart_item['quantity'] ) ) {
$_product_title .=  __( ' - '. $altmessage, 'woocommerce' ) ;
}
return $_product_title;
}
add_filter( 'woocommerce_cart_item_name', 'woocommerce_custom_cart_item_name', 10, 3);

Также добавьте следующий код CSS в файл style.css вашей дочерней темы.

.backorder_notification{
display: none;
}
.backorder_notification.custom{
display: block;
}

PS: если вы не добавите CSS-код, он не будет работать.

кредит для: http://www.northmore.net/change-backorder-text-woocommerce/

1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector