1
Быстрый Заказ Со Страницы Корзины
Автор polosatoff, 12 мая 2014 01:19
Сообщений в теме: 9
#1
Отправлено 12 Май 2014 - 01:19
Привет, господа!
Почти всегда на этом полезном форуме удается найти ответы на нужные вопросы =) но в этот раз не смог.
1. Мне нужно чтобы при нажатии кнопки "Оформить заказ" в корзине открывалась форма быстрого заказа. Она у меня уже налажена, но кнопка работает только на шаблоне(куске шаблона) "Товар"
2. Нужно, чтобы при нажатии на кнопку "Оформить заказ" в окне быстрого заказа, Я.Метрика считала это достижением цели. Я на всякий случай спрашиваю. Понимаю, что это сторонний сервис. Но все-таки. При посещении страницы ***/confirm я.метрика считает заказ подтвержденным. Это легко настроить. А вот как из формы быстрого заказа считать успешные оформления - непонятно)
Спасибо.
Почти всегда на этом полезном форуме удается найти ответы на нужные вопросы =) но в этот раз не смог.
1. Мне нужно чтобы при нажатии кнопки "Оформить заказ" в корзине открывалась форма быстрого заказа. Она у меня уже налажена, но кнопка работает только на шаблоне(куске шаблона) "Товар"
2. Нужно, чтобы при нажатии на кнопку "Оформить заказ" в окне быстрого заказа, Я.Метрика считала это достижением цели. Я на всякий случай спрашиваю. Понимаю, что это сторонний сервис. Но все-таки. При посещении страницы ***/confirm я.метрика считает заказ подтвержденным. Это легко настроить. А вот как из формы быстрого заказа считать успешные оформления - непонятно)
Спасибо.
#2
Отправлено 13 Май 2014 - 06:03
1. Добавьте в конец вашего шаблона "Корзина" следующий код
после этого добавьте в файл main.js код
2. Решение данного вопроса находиться в теме форума http://forum.storela...-яндексметрика/
<form action="/cart/add" id="order-stage"> <input type="hidden" name="hash" value="{HASH}" /> </form>
после этого добавьте в файл main.js код
$(function() { $('.cartForm').submit(function() { quickorder('#order-stage'); return(false); }); });
2. Решение данного вопроса находиться в теме форума http://forum.storela...-яндексметрика/
#3
Отправлено 28 Май 2014 - 20:23
Сake (13 Май 2014 - 06:03) писал:
1. Добавьте в конец вашего шаблона "Корзина" следующий код
после этого добавьте в файл main.js код
<form action="/cart/add" id="order-stage"> <input type="hidden" name="hash" value="{HASH}" /> </form>
после этого добавьте в файл main.js код
$(function() { $('.cartForm').submit(function() { quickorder('#order-stage'); return(false); }); });
Предварительно быстрый заказ был установлен в карточку товара, но требуется чтобы он был в корзине.
P.S. внесенные изменения удалил
Шаблон "Пластик" аккаунт SL-286869
#4
Отправлено 28 Май 2014 - 20:43
Кстати, обнаружил в корзине, что если в ней имеется несколько товаров, и одному из них поставить кол-во=0, то строка с этим товаром исчезнет, но сумма заказа при этом не меняется, что выглядит несколько странно. При удалении товара крестиком "удалить" - все нормально, корзина сама обновляется, сумма пересчитывается.
#5
Отправлено 28 Май 2014 - 20:57
User (28 Май 2014 - 20:43) писал:
Кстати, обнаружил в корзине, что если в ней имеется несколько товаров, и одному из них поставить кол-во=0, то строка с этим товаром исчезнет, но сумма заказа при этом не меняется, что выглядит несколько странно. При удалении товара крестиком "удалить" - все нормально, корзина сама обновляется, сумма пересчитывается.
На сколько вижу, на последнем шаге сумма все же меняется. А в самой корзине такое технически нельзя сделать.
#6
Отправлено 28 Май 2014 - 21:38
Почему ж нельзя, сумма обновляется при сабмите формы штатной кнопкой "пересчитать", и при удалении строки крестиком.
#8
Отправлено 29 Май 2014 - 02:23
Sleem (28 Май 2014 - 20:23) писал:
После выполнения действий ничего не изменилось, кэш чистил.
Предварительно быстрый заказ был установлен в карточку товара, но требуется чтобы он был в корзине.
P.S. внесенные изменения удалил
Шаблон "Пластик" аккаунт SL-286869
Предварительно быстрый заказ был установлен в карточку товара, но требуется чтобы он был в корзине.
P.S. внесенные изменения удалил
Шаблон "Пластик" аккаунт SL-286869
Для шаблона "Пластик" дополнительно понадобиться в шаблоне "Корзина" найти строку
<form action="{CART_URL}" method="post">
и заменить её на
<form action="{CART_URL}" method="post" class="cartForm">
User (28 Май 2014 - 20:43) писал:
Кстати, обнаружил в корзине, что если в ней имеется несколько товаров, и одному из них поставить кол-во=0, то строка с этим товаром исчезнет, но сумма заказа при этом не меняется, что выглядит несколько странно. При удалении товара крестиком "удалить" - все нормально, корзина сама обновляется, сумма пересчитывается.
Данная проблема является ошибкой, при которой сумма корзины высчитывается до обновления числа товаров в корзине. Информация будет передана разработчикам.
#9
Отправлено 09 Июль 2014 - 17:48
Сake (29 Май 2014 - 02:23) писал:
Для шаблона "Пластик" дополнительно понадобиться в шаблоне "Корзина" найти строку
и заменить её на
Данная проблема является ошибкой, при которой сумма корзины высчитывается до обновления числа товаров в корзине. Информация будет передана разработчикам.
<form action="{CART_URL}" method="post">
и заменить её на
<form action="{CART_URL}" method="post" class="cartForm">
Данная проблема является ошибкой, при которой сумма корзины высчитывается до обновления числа товаров в корзине. Информация будет передана разработчикам.
<script type="text/javascript"> $(document).ready(function(){ submitIfFormChange = function() { // Отменяем выполнение последнего запущенного через таймаут скрипта, если таковой был. if(typeof(document.cartAutosubmitFormLastTimeoutId) != 'undefined') { clearTimeout(document.cartAutosubmitFormLastTimeoutId); } document.cartAutosubmitFormLastTimeoutId = setTimeout("$('form.cartForm').submit();", 300); } $('form.cartForm input.inputText').bind('keyup', submitIfFormChange); }); </script>
либо вставив этот же код, но без тегов </script> в файл main.js. В этом случае в конце файла main.js добавляется только вот этот код:
$(document).ready(function(){ submitIfFormChange = function() { // Отменяем выполнение последнего запущенного через таймаут скрипта, если таковой был. if(typeof(document.cartAutosubmitFormLastTimeoutId) != 'undefined') { clearTimeout(document.cartAutosubmitFormLastTimeoutId); } document.cartAutosubmitFormLastTimeoutId = setTimeout("$('form.cartForm').submit();", 300); } $('form.cartForm input.inputText').bind('keyup', submitIfFormChange); });
#10
Отправлено 10 Июль 2014 - 21:43
я к input-у количества просто поставил onChange="this.form.submit();"
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных