Я довольно новичок в php. Работа на сайте WordPress с WooCommerce. Я добавил уведомление, в котором отображается «Получить бесплатную доставку по заказам свыше 400 долларов США …», и она работает, но когда элемент удаляется или добавляется в корзину, он будет отображать его несколько раз. Я бы хотел, чтобы он отображался только один раз. Вот мой код:
function sp_custom_notice() { if ( ! is_cart() ) { return; } $subtotal = WC()->cart->get_cart_subtotal(); $free_shipping_threshold = 400; $notice_freeship = wc_add_notice( 'Get FREE shipping on orders over $400. Only valid in the US, not valid on bullets. <a href="https://bulletcentral.com/shipping/#promo">For more information, click here</a>', 'notice' ); if ( $subtotal < $free_shipping_threshold ) { return $notice_freeship; } }
Какое действие вы добавляете с помощью функции sp_custom_notice? Если вы используете
add_action('wp', 'sp_custom_notice')
Он будет называться несколько раз.
Попробуйте подключиться к другим действиям:
add_action( 'woocommerce_before_checkout_form', 'sp_custom_notice' );
Таким образом, уведомление будет отображаться только один раз, когда отображается страница проверки.