Требовать расчета стоимости доставки в корзине - но только если в ней есть физические продукты - PullRequest
0 голосов
/ 08 ноября 2019

На моем клиентском веб-сайте WooCommerce мы запускаем скрипт, который вынуждает вычислять стоимость доставки на странице корзины:

add_action('wp_head','prevent_proceed_to_checkout');

function prevent_proceed_to_checkout() { 

echo '  <script>
            jQuery(function(){  
                jQuery(".woocommerce-cart .wc-proceed-to-checkout a.checkout-button").on("click",function(e){
                    var _this = this;
                    alert("Bitte berechne die Versandkosten!");
                    e.preventDefault();
                    jQuery(".shipping-calculator-form .button").on("click",function(){
                        jQuery(_this).off();
                    });
                 });
            });
        </script>';
}

Мне нужно изменить это, чтобы он не выполнялся, если нет физических продуктовв корзине. Я попытался с помощью javascript проверить, есть ли класс .woocommerce-shipping-totals - в домене, но мне не удалось найти решение, которое я нашел.

Есть идеи?

1 Ответ

0 голосов
/ 09 ноября 2019

Я решил это сейчас, добавив оператор if в функцию onclick, которая в основном проверяет, отображается ли класс ".woocommerce-shipping-totals" на странице, как только нажимается кнопка извлечения. Вот код, который я добавил: (прямо перед предупреждением)

var shipping = document.getElementsByClassName("woocommerce-shipping-totals").length;      
if (shipping > 0) {
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...