Как удалить сообщение «Стоимость доставки обновлена» в WooCommerce

#php #wordpress #woocommerce #hook-woocommerce #notice

#php #wordpress #woocommerce #hook-woocommerce #УВЕДОМЛЕНИЕ

Вопрос:

Я использую это, чтобы удалить сообщение «Корзина обновлена» в Woocommerce:

 add_filter( 'woocommerce_add_message', '__return_false');
 

Но сообщение «Стоимость доставки обновлена» по-прежнему отображается. Как я могу удалить это сообщение?

Ответ №1:

В shortcodes/class-wc-shortcode-cart.php мы находим

 wc_add_notice( __( 'Shipping costs updated.', 'woocommerce' ), 'notice' );
 

В includes/wc-notice-functions.php мы находим, что в wc_add_notice функции

 // Backward compatibility.
if ( 'success' === $notice_type ) {
    $message = apply_filters( 'woocommerce_add_message', $message );
}

$message = apply_filters( 'woocommerce_add_' . $notice_type, $message );
 

Таким образом, вместо использования woocommerce_add_message крючка фильтра вы можете использовать woocommerce_add_"$notice_type" крючок фильтра. Затем вы будете сравнивать сообщение с уведомлением, если этого достаточно, мы возвращаем false.


Таким образом, вы получаете:

 function filter_woocommerce_add_notice ( $message ) {
    // Equal to (Must be exactly the same).
    // If the message is displayed in another language, adjust where necessary!
    if ( $message == 'Shipping costs updated.' ) {
        return false;
    }   
    
    return $message;
}
add_filter( 'woocommerce_add_notice', 'filter_woocommerce_add_notice', 10, 1 );