В этом уроке хочу поделиться с вами сниппетом кода, который показался мне интересным – он делает обычные сообщения об ошибках на странице оформления заказа плавно исчезающими.
Кстати, у меня на сайте есть видеокурс по созданию темы WooCommerce на основе готовой HTML-вёрстки, там же есть отдельный урок про страницу оформления заказа.
Вот так это выглядит:
Казалось бы какая-то приятная мелочь, но на самом деле тут вы также научитесь паре интересных вещей.
Сначала готовый код:
add_action( 'wp_enqueue_scripts', 'true_checkout_error_fade_out', 25 ); function true_checkout_error_fade_out() { // если находимся не на странице оформления заказа, то ничего не делаем if( ! is_checkout() ) { return; } // по желанию можете проверять страницу оплаты заказа из личного кабинета // if( is_wc_endpoint_url( 'order-pay' ) ) { // return; // } wc_enqueue_js( " $( document.body ).on( 'checkout_error', function(){ setTimeout( function(){ $('.woocommerce-error').fadeOut( 300 ); }, 2000); }) " ); }
true
и на некоторых других страницах, например на странице оплаты заказа, поэтому вам может пригодиться условный тег is_wc_endpoint_url().wc_enqueue_js()
, которая вставляет JavaScript код в футер вашего сайта уже внутрь jQuery конструкции jQuery( function( $ ) { ... } );
300
– это то, как быстро будет срабатывать анимация исчезновения, чем ниже цифра, тем быстрее будет исчезать. 2000
на 19-й строке – это как долго ошибки будут отображаться перед тем, как начнут исчезать, время в миллисекундах, то есть 2000 – это 2 секунды.checkout_error
на странице оформления заказа в WooCommerce.
Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.