WooCommerce: функция обжига после обновления количества корзин - PullRequest
0 голосов
/ 23 января 2019

Я пытаюсь запустить этот скрипт, когда пользователь обновляет количество корзин на моей странице корзины WordPress.

Скрипт должен иметь обновленные значения для итога, промежуточных итогов и т. Д., Когда на странице корзины происходит обновление. Моя идея заключалась в том, чтобы использовать хук действия WooCommerce для запуска сценария после изменения количества продуктов в корзине, чтобы я мог получить самую последнюю, самую актуальную цену. Ниже я тестирую только одно значение, grandTotal.

Чтобы получить больше контекста, в корзине есть кнопка Обновить корзину , когда кто-то использует стрелки для увеличения или уменьшения количества, мне нужно, чтобы это произошло, когда кто-то нажимает на корзину обновления . Кнопка . Мне не нужна цена для динамического обновления при изменении количества. Это следует сделать только после нажатия кнопки Обновить корзину .

enter image description here

Это не работает. В настоящее время, с кодом ниже, кнопка Обновить корзину ломается и не обновляет количество вообще. Функция также не срабатывает и ничего не происходит.

function updateCartPrice( $cart_item_key, $quantity, $old_quantity ) {
    if ( is_cart() ) { ?>

        <script type="text/javascript">
            bronto('cart:send', {
                "customerCartId": "cart_ABC123", // Set for testing. This value will be auto-generated when not set.
                "phase": "ORDER_COMPLETE", // Set as SHOPPING for Cart Recovery
                "currency": "USD",
                "subtotal": 35.98,
                "grandTotal": <?php echo WC()->cart->get_total() ?>,
                "customerOrderId": "123ABC", // Not necessary for Cart Recovery
                "emailAddress": "example@example.com",
            });
            console.log('test log');
        </script>


    <?php
    }
}

// add the action 
add_action( 'woocommerce_after_cart_item_quantity_update', 'updateCartPrice' );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...