Добавить уведомление WC в кассе после всех других уведомлений - PullRequest
0 голосов
/ 22 мая 2018

Я пытаюсь добавить уведомление об ошибке в кассе WooCommerce, используя следующий код:

add_action('woocommerce_after_checkout_validation', 'validate_checkout_email_opt', 999);

function validate_checkout_email_opt()
{
    if (!$_POST['terms_emails']) {
        wc_add_notice(__('Bitte stimme zu, dass du den Hinweis zu unseren E-Mail- und SMS-Benachrichtigungen gelesen hast.'), 'error');
    }
}

Сообщение об ошибке отображается, но, к сожалению, оно отображается вверху списка всехошибки.Я хочу поместить его в конец (потому что это последнее поле в форме оформления заказа) или, в идеале, поместить его на определенную позицию в списке.

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

Установка «приоритета» на «999» также не помогает.

У кого-нибудь есть решение этой проблемы?Спасибо!

Я использую WC V 3.3.5

1 Ответ

0 голосов
/ 22 мая 2018

Вы должны делать это следующим образом.

add_action('woocommerce_after_checkout_validation', 'validate_checkout_email_opt', 10, 2);

function validate_checkout_email_opt( $data, $errors )
{
    if (!$_POST['terms_emails']) {
        $errors->add( 'terms-email', __('Bitte stimme zu, dass du den Hinweis zu unseren E-Mail- und SMS-Benachrichtigungen gelesen hast.') );
    }
}

пример результата:

reigelgallarde.me

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