Повторить заказ
Покупатель повторяет прежний заказ одной кнопкой — весь его состав сразу в корзине.
Снимки экрана скоро появятся.
Дополнение даёт покупателю повторить прежнюю покупку одной кнопкой. Кнопку «Повторить заказ» вы ставите в личном кабинете сами: в списке заказов, на странице заказа или в обоих местах. Покупатель нажимает её — магазин перекладывает весь состав заказа в корзину и открывает её. Разыскивать те же товары по каталогу покупателю не приходится, а вы получаете повторные продажи там, где берут одно и то же: расходники, корм, бытовую химию, запчасти.
Цены магазин берёт сегодняшние, со всеми действующими у вас скидками: заказ остаётся снимком того дня, а покупатель платит по текущему каталогу.
Что делает
- Ставит кнопку «Повторить заказ» там, где вы её поставите: в списке заказов, на странице заказа или в обоих местах.
- Перекладывает в корзину весь состав заказа и сразу открывает корзину.
- Пропускает товары, которые вы сняли с продажи или которых не осталось на складе, а если остатка хватает не на всё количество — кладёт то, что есть.
- Возвращает дополнительные услуги позиций: подъём на этаж, сборку, гравировку.
- Возвращает аксессуар со скидкой его группы и сохраняет покупку упаковками.
- Добавляет товары к тому, что покупатель уже отобрал, либо собирает корзину заново — как выберете.
- Показывает кнопку только вошедшему покупателю и только у его собственных заказов.
Чего не делает
Не спрашивает, что именно повторить: заказ идёт в корзину целиком. Не переносит цены и скидки того дня, промокод, списанные баллы, способ доставки и оплаты — всё это покупатель выбирает при оформлении заново. Подарки акций не повторяет: подарок выдаст сама акция, если условия снова сойдутся.
Что нужно для работы
Магазин на CartiX 2.5 или новее. После установки поставьте кнопку в оформлении магазина: «Дизайн» → вкладка «Файлы» → шаблоны личного кабинета покупателя, строка {repeat_order id=$order.number}. Вид кнопки правится там же.
Что появится в магазине
Так это увидит покупатель после установки.
- Кнопка «Повторить заказ» у заказа в личном кабинете покупателя. По нажатию товары этого заказа складываются в корзину, и покупатель попадает в неё. Кнопку вы ставите в оформлении магазина там, где показан заказ: в списке заказов — {repeat_order id=$o.number_raw} внутри блока orders-row__meta, на странице заказа — {repeat_order id=$order.number_raw}. Свою подпись задайте так: {repeat_order id=$order.number_raw label="Купить снова"}. Вид кнопки вы меняете в редакторе оформления, на вкладке «Файлы». Гостю кнопка не показывается: повторить можно только свой заказ.
Повторить заказ
Покупатель повторяет прежнюю покупку одной кнопкой: весь состав заказа перекладывается в корзину, и ему не приходится разыскивать те же товары по каталогу.
Как вывести кнопку в магазине
Кнопку вы ставите тегом в оформлении магазина: «Дизайн» → вкладка «Файлы», шаблоны личного кабинета покупателя. Пока тега там нет, кнопка покупателю не показывается.
В списке заказов (account/partials/orders-table.html) — внутри блока
orders-row__meta, где строка заказа отдаёт место под свои подписи:
{repeat_order id=$o.number_raw}
Строка заказа — сетка из четырёх колонок, поэтому кнопка, поставленная прямо в неё, уедет на отдельную строку.
На странице заказа (account/order.html), рядом с заголовком:
{repeat_order id=$order.number_raw}
Другие варианты:
{* своя подпись *}
{repeat_order id=$order.number_raw label="Купить снова"}
{* свой класс оформления на кнопке *}
{repeat_order id=$order.number_raw class="btn-review"}
Тег сам решает, показываться ли: гостю он не выводит ничего — повторить можно только свой заказ.
Что происходит по нажатию
Магазин складывает товары заказа в корзину и сразу открывает корзину — покупатель видит состав своими глазами, поэтому по дороге ему ничего не рассказывают. Цены берутся сегодняшние, со всеми действующими скидками: заказ остаётся снимком того дня, а покупатель платит по текущему каталогу.
Единственное исключение — в корзину не попало ничего, потому что весь заказ уже не продаётся. Уводить в нетронутую корзину нечем, и тогда рядом с кнопкой появляется строка с объяснением: иначе нажатие выглядело бы сломанным.
Пропускаются:
- товары, снятые с продажи;
- варианты, которых больше нет в каталоге;
- товары, которых не осталось на складе;
- подарки — их выдаёт акция по своим условиям, и в новой корзине она выдаст их сама, если условия снова сойдутся.
Если остатка хватает не на всё количество, в корзину попадает то, что есть.
Настройки
«Настройки» → «Настройки магазина» → «Плагины» → «Повторить заказ»:
- Что делать с корзиной, если в ней уже что-то лежит — добавить к отобранному или собрать корзину заново.
- Переносить дополнительные услуги — подъём на этаж, сборка, гравировка: те же услуги вернутся в корзину и прибавятся к сумме.
Что правится в оформлении
Вид кнопки, её подпись, значок и поведение вы меняете в «Дизайн» → вкладка «Файлы», не трогая само дополнение:
templates/plugins/repeat-order/button.html— разметка кнопки;assets/plugins/repeat-order/repeat-order.css— её вид;assets/plugins/repeat-order/repeat-order.js— что происходит по нажатию.
Файлы появляются в оформлении сами при первом показе кнопки. Пока вы их не меняли, обновление дополнения обновит и их — исправленная кнопка доедет до магазина. Как только вы файл поправили, дополнение к нему больше не прикасается: ваша вёрстка остаётся вашей.
Имена опор менять нельзя, иначе кнопка перестанет работать:
[data-repeat-order] — сама кнопка, [data-repeat-note] — место для строки на
случай, когда в корзину не попало ничего.
Что починили
Подсказки, описание и инструкция дополнения теперь называют разделы панели так же, как меню. Раньше часть путей вела в места вроде «Настройки → Дополнения», которых после CartiX 2.131.0 нет.
Что изменилось
Кнопка «Повторить заказ» работает с новыми номерами заказов CartiX 2.90.0, где номер заказа совпадает с его номером в магазине. Покупатель по-прежнему может повторить заказ из личного кабинета, а тег в теме менять не нужно.
Что нового
Кнопка «Повторить заказ» стоит у каждого заказа в кабинете, но её оформление и скрипт загружаются один раз и приходят в общей склейке.
Оформление и скрипты дополнения теперь склеиваются с файлами темы в общий сжатый файл, и страница грузится меньшим числом запросов. Это работает вместе с ядром 2.86.0, поэтому дополнение требует его: сначала обновите магазин, потом дополнение. Как устроена склейка: https://cartixx.com/docs/theme/assets
Что починили
Кнопку вы по-прежнему ставите в оформление сами — описание дополнения в версии 1.1.0 говорило обратное, и это была ошибка.
Кнопка больше не выглядит бледной в списке заказов: она берёт основной цвет текста вашего оформления, а не приглушённый цвет строки заказа.
Что нового
Кнопка «Повторить заказ» теперь появляется сама: в штатном оформлении она уже стоит в списке заказов и на странице заказа. Ставить строку в оформление больше не нужно — если вы делали это руками, ваша правка остаётся как есть.
Повтор большого заказа стал быстрым. Раньше магазин пересчитывал корзину после каждой позиции, и заказ из полусотни товаров складывался около четырёх с половиной секунд; теперь — меньше полусекунды.
Что починили
Если во время повтора что-то срывалось, покупатель мог остаться с наполовину собранной корзиной, а при настройке «собрать корзину заново» — вообще без прежней. Теперь повтор идёт одной операцией: не вышло — корзина остаётся ровно такой, какой была, и покупатель читает, что повторить не получилось, а не что товары сняты с продажи.
В списке заказов кнопка была бледнее всех подписей вокруг и читалась как недоступная. Теперь она обычного цвета, а объяснение под ней — нормального размера.
Объяснение «положить было нечего» показывалось под всеми заказами списка сразу, если у покупателя не сработал JavaScript. Теперь оно появляется только у того заказа, который нажали.
Что нового
Дополнение «Повторить заказ» вышло первой версией. В личном кабинете покупателя у заказа появляется кнопка «Повторить заказ»: по нажатию магазин перекладывает весь состав заказа в корзину по сегодняшним ценам каталога и открывает корзину. Разыскивать те же товары покупателю больше не нужно.
Товар, который вы сняли с продажи или который закончился на складе, в корзину не попадает; если остатка хватает не на всё количество, попадает то, что есть. Услуги позиции и скидка группы аксессуаров возвращаются вместе с товаром. В настройках вы выбираете, добавлять товары к тому, что покупатель уже отобрал, или собирать корзину заново.
Что сделать после установки
Поставьте кнопку в оформлении магазина: «Дизайн» → вкладка «Файлы» → шаблоны личного кабинета покупателя, строка {repeat_order id=$order.number}. Пока её там нет, кнопка покупателю не показывается.