Привет. Столкнулись с проблемой.
Когда оформляем заказ то соответственно нас перекидывает на страницу где показывает инвойс итп - Заказ успешно оформлен.
Дело в том сто если обновить данную страницу - ничего не изменится. Но в Google analytics это считается как еще одна транзакция. Что ест немного не хорошо.
Как сделать так чтобы при обновлении страницы - сразу бросало на главную?
Спасибо
Можно записать в сессию или кукис, что данные по этому заказу отправлены. И в итоге уже либо не подключать код GA, либо делать редирект
Вот как решил проблему
<div class="check_img_checkout"><img src="https://upload.wikimedia.org/wikipedia/commons/f/fb/Check-Logo.png" alt="" width="72" height="72" display="block" margin-left="autok" margin-right="auto" width="72px" /></div>
<br><div class="order_id_chk"></p>#{$order_info.ab__hoi_mask_id}</div>
<div class="ty-checkout-complete__order-success">
<p class="txt_plc_scs">{__("text_order_placed_successfully")}
{if $order_info}
{if $order_info.child_ids}
<a href="{"orders.search?period=A&order_id=`$order_info.child_ids`"|fn_url}">{__("order_details")}</a>
{else}
<br> <a class="ord_dett" href="{"orders.details?order_id=`$order_info.order_id`"|fn_url}">{__("order_details")}</a></br>
{/if}
{/if}
</p>
</div>
</div>
<div>
<p class="redir_check"><span style="color: #0000ff;">{__("checkout_redirect_valera")}</span><br><span id="cctime"></span></br></p>
</div>
<script>
function startTimer(duration, display) {
var timer = duration, minutes, seconds;
var end =setInterval(function () {
minutes = parseInt(timer / 60, 10)
seconds = parseInt(timer % 60, 10);
minutes = minutes < 10 ? "0" + minutes : minutes;
seconds = seconds < 10 ? "0" + seconds : seconds;
display.textContent = minutes + ":" + seconds;
if (--timer < 0) {
window.location = "https://forum.cs-cart.ru/"; //сайт на который делать редирект
clearInterval(end);
}
}, 1000);
}
window.onload = function () {
var fiveMinutes = 7, // Время в секундах
display = document.querySelector('#cctime');
startTimer(fiveMinutes, display);
};
</script>