Задача стояла в генерации ссылки на корзину, которую собрал клиент для отправки другому пользователю.
Разбил на несколько пунктов, так легче делать:
  • Генерация ссылки
  • Запись, обновление для пользователя его корзины
  • Запись данных вводимых пользователем, такие как телефон, имя, сообщение (в процессе)
  • Уведомление администраторов (в процессе)
  • Вывод не оформленных или поделившихся корзин в админке (в процессе)

Сниппет [[shareCart]] выводит ссылку на сайт + GET параметр cart с хэшем на заполненную корзину.
Можно выводить в любом месте сайта, корзина все равно заполнится товаром.
Возможно админам собирать корзину и скидывать по чату клиентам, что бы не отправлять ссылку на каждый товар в отдельности.
После установки, необходимо в настройках указать id ресурса корзины, для формирования верной ссылки на корзину.
Выводим в шаблоне корзины, сниппет
[[!shareCart?]]

который выводит кнопку для сохранения данной корзины. Рядом с кнопкой появится ссылка, которую Вы можете отправить клиенту, и корзина заполнится автоматом.

При изменении товара сохранится новая корзина с новым ключем. При изменении количества сохранится та же корзина под одним ключем.
Сниппет
[[!getShareCart?]]

выводит все сохраненные корзины для пользователя. Можно выводить и для не авторизованных, но пока не кончится сессия. Затем создается новая сессия, и новый набор корзин.

Сниппет выводит ссылки на корзины для отправки, товар, и возможность удалить корзину.
В следующей версии корзины удалятся полностью не будут, а так же данные по пользователям и корзинам будет выведена в админку.
modstore.pro