#php #prestashop #prestashop-1.7 #prestashop-modules
Вопрос:
У меня в моем Prestashop включен мультимагазин, я хотел бы получить доступ к корзине второго магазина в первом магазине. Как я могу этого достичь?
Я могу получить содержимое корзины в текущем магазине, используя приведенный ниже код:
$this-gt;context-gt;cart
но как получить доступ к корзине второго магазина, которого нет в текущем контексте
Ответ №1:
Я думаю, что это невозможно с классами / методами Prestashop, поскольку объект контекста связан с текущим магазином.
Разве использование встроенных общих тележек между одной и той же группой магазинов не является шансом ? Я знаю, что он глючит, но он должен работать, пока два магазина находятся в одном домене.
В противном случае, я думаю, вы можете выполнить запрос к БД непосредственно в таблице ps_cart_product (возможно, соединенной с ps_cart для извлечения идентификатора клиента), поскольку она содержит строку id_shop.
Ответ №2:
Это не лучший подход .. В другом магазине могут быть совершенно другие товары, поэтому корзина также не может быть действительной.
Но если вы знаете идентификатор корзины и идентификатор магазина, вы можете выполнить запрос к БД
$query = new DbQuery(); $query-gt;select('*'); $query-gt;from('cart'); $query-gt;where("id_cart= {$cartID}"); $query-gt;where("id_shop= {$shopID}"); $result = Db::getInstance()-gt;executeS($query);