Как вставить JS-код Google Merchant Review на страницу завершения заказа WooCommerce

Я хочу заполнить переменные, которые коды Google Merchant Review запрашивают на странице оформления заказа:

<script src="https://apis.google.com/js/platform.js?onload=renderOptIn" async defer></script>

<script>
  window.renderOptIn = function() {
    window.gapi.load('surveyoptin', function() {
      window.gapi.surveyoptin.render(
        {
          "merchant_id": mymerchantid,
          "order_id": "ORDER_ID",
          "email": "CUSTOMER_EMAIL",
          "delivery_country": "COUNTRY_CODE",
          "estimated_delivery_date": "YYYY-MM-DD"
        });
    });
  }
</script>

Мне нужно echo следующие переменные:

ORDER_ID: идентификационный номер идентификатора заказа WooCommerce.

CUSTOMER_EMAIL: адрес электронной почты, указанный в разделе информации о клиенте заказа.

DELIVERY_COUNTRY: я думаю, что могу просто заполнить его ES, так как я продаю только в Испании

ESTIMATED_DELIVERY_DATE: у меня уже есть функция, которую я использую для расчета даты доставки, поэтому я думаю, что могу использовать эту функцию php здесь.

В заключение, мне нужна была бы помощь в выяснении, как мне повторить ORDER_ID и CUSTOMER_EMAIL на странице оформления заказа, конкретно внутри указанного скрипта. Я не знаю, как это сделать, поскольку все, что я пробовал, приводило к катастрофическим результатам.

Большое спасибо за чтение!

TL; DR: Как мне получить echo ORDER_ID и CUSTOMER_EMAIL на странице после оплаты в WooCommerce?


person ECR    schedule 18.03.2017    source источник


Ответы (1)


Если вы хотите добавить код конверсии цели JavaScript на страницу завершения заказа или страницу благодарности, вам необходимо использовать _1 _ крючок.

Вот код:

function wh_CustomReadOrder($order_id) {
    //getting order object
    $order = wc_get_order($order_id);
    $email = $order->billing_email;
    ?>
    <script src="https://apis.google.com/js/platform.js?onload=renderOptIn" async defer></script>
    <script>
        window.renderOptIn = function () {
            window.gapi.load('surveyoptin', function () {
                window.gapi.surveyoptin.render(
                        {
                            "merchant_id": mymerchantid,
                            "order_id": "<?php echo $order_id; ?>",
                            "email": "<?php echo $email; ?>",
                            "delivery_country": "COUNTRY_CODE",
                            "estimated_delivery_date": "YYYY-MM-DD"
                        }
                );
            });
        };
    </script>
    <?php
}

add_action('woocommerce_thankyou', 'wh_CustomReadOrder');

Код помещается в functions.php файл вашей активной дочерней темы (или темы). Или также в любых PHP-файлах подключаемых модулей.
Код протестирован и работает.

Ссылка:

Связанные вопросы

Надеюсь это поможет!

person Raunak Gupta    schedule 18.03.2017