Добавление товара в корзину методом GET или POST
Здравствуйте, вопрос по интернет-магазину на SS6:
нужен запрос на добавление товара в корзину методом GET или POST, и причем не штучно, а скопом. Где взять?
Эта тема в архиве. Добавление комментариев к ней отключено.
9 ответов
Насколько я знаю, для добавления товара в корзину используется POST-запрос к контроллеру shopFrontendCartAddController, а он принимает ID только одного товара. Отсюда я делаю вывод, что для реализации описанной возможности потребуется написание плагина и доработка темы дизайна, для того чтобы она обращалась к контроллеру вашего плагина, а не к стандартному контроллеру Shop-Script.
А если, допустим, я хочу добавить несколько товаров в корзину по клику на одну кнопку, все эти товары находятся на данной странице и я просто при помощи jquery сделаю клики по всем кнопкам В корзину? Насколько вообще такой вариант корректен? или лучше писать плагин, который будет добавлять товары по аналогии с shopFrontendCartAddController
Корректен...почему бы и нет.
Тут вообще вариантов много. В цикле добавлять выделенные товары через стандартный cartadd контроллер еще можно.
Для одного магазина делал отдельный cartaddcustom <form action="{$wa->getUrl('/frontendCart/addcustom')} id="cart-form... - так вообще любые бантики можно вязать.
Плагин тут вообще не нужен.
Можете показать реализацию кастомного варианта?
Не сказал бы, что этот вариант таки "корректен". "Сработает в большинстве случаев" - да. Но и ошибки возможны. Если делать в цикле, то процесс может занять не мало времени в случае, если у клиента большой пинг до сервера. Если же НЕ циклично, то вряд ли получится проверить успешность добавления каждого товара. А т.к. это по сути отдельные запросы, то один(или не один) из них может получить... ну скажем ошибку 500. В результате вместо 10 товаров у клиента добавится всего 9. Поэтому "корректным" способом было бы написание своего обработчика.
Подскажите пожалуйста, как можно добавить товар (поштучно) по прямой ссылке в корзину?
Например есть товар: Книга №1, ее - ID 223
Если перейти по ссылке https://site.ru/cart/add/?=223 - будет ответ в формате JSON - { "status": "fail", "errors": "Товар не найден" }, но на самом деле этот товар есть и его остатки и наличие актуально.
P.S. Поддержка как всегда "на морозе" отправляет на форум)
вот тут наверное то, что вам нужно
https://www.webasyst.ru/store/...
Вообще все это нужно для Гугл мерчанта. Ваш плагин не подойдет (я уже смотрел его вчера и почти купил), но в нем можно делиться корзиной с товарами, а мне нужно конкретно добавление товара в корзину по ссылке. То есть, например, покупатель увидел карточку товара в поиске Гугл Книга№1, нажал на нее, происходит редирект на магазин СРАЗУ уже в корзину, в котором он УЖЕ видит добавленную для покупки Книга№1 - остается только нажать кнопку оформить заказ.
в плагине можно создать вечные ссылки на корзины, где будет по одному товару.
но конечно вы можете и другой плагин написать без всего этого. просто там не все так просто с добавлением товаров в корзину.