Krol Опубликовано: 27 декабря 2016 Поделиться Опубликовано: 27 декабря 2016 (изменено) Здравствуйте! Как сделать закладки без регистрации? Опенкарт 2 В файле В файле \catalog\controller\account\wishlist.php Закомментировал строки в начале кода: // if (!$this->customer->isLogged()) { // $this->session->data['redirect'] = $this->url->link('account/wishlist', '', 'SSL'); // $this->response->redirect($this->url->link('account/login', '', 'SSL')); Не заработало. Тогда нашел на каком то форуме совет: "заменить вот эту строку: if ($this->customer->isLogged()) { на эту if (1) { И всё вроде бы заработало, только закладки стали общими для всех покупателей :) Тестил с компьютера и с телефона с мобильным интернетом (айпи то разные). Каждый кто добавляет что-то в закладки отображается общим списком для всех. Помогите пожалуйста!!! Ещё нашел но проблему не решает: <?xml version="1.0" encoding="UTF-8"?> <modification> <id>Wishlist w/o Registration</id> <version>1.0.0</version> <vqmver>2.5.1</vqmver> <author>NZXT.UA - [email protected]</author> <file path="catalog/controller/account/" name="wishlist.php"> <operation> <search position="replace" offset="4"> <![CDATA[ if (!$this->customer->isLogged()) { ]]></search> <add> <![CDATA[]]> </add> </operation> <operation> <search position="replace"> <![CDATA[ $data['continue'] = $this->url->link('account/account', '', 'SSL'); ]]> </search> <add> <![CDATA[ $data['continue'] = $this->url->link('common/home'); ]]> </add> </operation> <operation> <search position="replace"> <![CDATA[ $json['info'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', 'SSL'), $this->url->link('account/register', '', 'SSL'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); ]]></search> <add> <![CDATA[ $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . $this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); ]]> </add> </operation> </file> </modification> Ещё вариантик: <?xml version="1.0" encoding="utf-8"?> <modification> <name>Wishlist w/o Registration</name> <code>wishlist_w_o_registration</code> <version>1.0.0</version> <author>rewuxiin</author> <file path="catalog/controller/account/wishlist.php"> <operation> <search> <![CDATA[if (!$this->customer->isLogged()) {]]> </search> <add position="replace" offset="5"> <![CDATA[]]> </add> </operation> <operation> <search> <![CDATA[ $data['continue'] = $this->url->link('account/account', '', 'SSL'); ]]> </search> <add position="replace"> <![CDATA[ $data['continue'] = $this->url->link('common/home'); ]]> </add> </operation> <operation> <search> <![CDATA[if ($this->customer->isLogged()) {]]></search> <add position="after" offset="21"> <![CDATA[ $this->load->model('account/wishlist'); $this->model_account_wishlist->addWishlist($this->request->post['product_id']); $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); $json['total'] = sprintf($this->language->get('text_wishlist'), $this->model_account_wishlist->getTotalWishlist()); ]]> </add> </operation> </file> </modification> Изменено 27 декабря 2016 пользователем Krol Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Dotrox Опубликовано: 27 декабря 2016 Поделиться Опубликовано: 27 декабря 2016 (изменено) закладки стали общими для всех покупателей Ну, это вполне предсказуемо: вишлист привязывается в базе к id покупателя (посмотрите /catalog/model/account/wishlist.php), а у вас вместо него получается null (общий для всех незалогиненных). Вам нужно генерировать какой-то уникальный ключ для каждого посетителя, писать его в куки (а лучше в localStorage) и в базу вместо $this->customer->getId(), если пользователь не залогинен. Соответственно, по этому ключу и определять, кому какой вишлист выводить. А вообще, вроде, для этого есть модули. Изменено 27 декабря 2016 пользователем Dotrox Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Tom Опубликовано: 28 декабря 2016 Поделиться Опубликовано: 28 декабря 2016 https://opencart-forum.ru/topic/16676-dorabotka-razdela-zakladki-prosmotr-bez-regi/ https://opencart-forum.ru/files/file/1393-%D0%B7%D0%B0%D0%BA%D0%BB%D0%B0%D0%B4%D0%BA%D0%B8-%D0%B1%D0%B5%D0%B7-%D1%80%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%86%D0%B8%D0%B8-vqmod-%D0%B4%D0%BB%D1%8F-opencart-15x-ocmod-%D0%B4%D0%BB%D1%8F-opencart-2x/ Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 3 месяца спустя... lextorg Опубликовано: 11 апреля 2017 Поделиться Опубликовано: 11 апреля 2017 https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=21136&filter_search=wishlist&filter_license=free Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 1 год спустя... Op77 Опубликовано: 23 июня 2018 Поделиться Опубликовано: 23 июня 2018 В 11.04.2017 в 11:40, lextorg сказал: https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=21136&filter_search=wishlist&filter_license=free ocStore 2.3.0.2.3 Не обновляется число количество закладок в меню "Мои закладки" (2) вверху, а в админке, когда настраиваю, выдаёт "Warning! You have installed a incompatible version of module for this opencart ..." Кто нибудь чинил? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 10 месяцев спустя... legioner26 Опубликовано: 25 апреля 2019 Поделиться Опубликовано: 25 апреля 2019 Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); 3 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 1 месяц спустя... Espresso.Doktor Опубликовано: 17 июня 2019 Поделиться Опубликовано: 17 июня 2019 А есть возможность в OC 2.3, увидеть из админки товары которые добавили в закладки? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Dotrox Опубликовано: 17 июня 2019 Поделиться Опубликовано: 17 июня 2019 3 часа назад, Espresso.Doktor сказал: А есть возможность в OC 2.3, увидеть из админки товары которые добавили в закладки? Из коробки такой возможности нет даже для вишлистов зарегистрированных. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Tom Опубликовано: 17 июня 2019 Поделиться Опубликовано: 17 июня 2019 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 2 месяца спустя... Lilya Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 (изменено) В 17.06.2019 в 18:05, Dotrox сказал: Из коробки такой возможности нет даже для вишлистов зарегистрированных. Это почему? 1. Заходим в админку. 2. АдминПанель -> Покупатели -> Покупатели -> Войти в магазин от имени покупателя. 3. Сморим его wishlist. P.S. ХМ... но это только для одного покупателя, а если статистику смотреть по всем товарам, то этот модуль, предложенный выше. Изменено 24 августа 2019 пользователем Lilya Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Dotrox Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 17 минут назад, Lilya сказал: Войти в магазин от имени покупателя. Вопрос звучал так: В 17.06.2019 в 14:05, Espresso.Doktor сказал: увидеть из админки Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Bn174uk Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 В 17.06.2019 в 14:05, Espresso.Doktor сказал: А есть возможность в OC 2.3, увидеть из админки товары которые добавили в закладки? Устанавливайте пока бесплатный Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Lilya Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Походу код с багом.... Вот в этой строке: unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); Выбивает ошибку: Syntax error, unexpected T_UNSET Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 4 недели спустя... fortoonas Опубликовано: 18 сентября 2019 Поделиться Опубликовано: 18 сентября 2019 В 24.08.2019 в 15:15, Bn174uk сказал: Устанавливайте пока бесплатный Спасибо друг, мне очень пригодился этот модуль!! Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 4 месяца спустя... docjers Опубликовано: 11 февраля 2020 Поделиться Опубликовано: 11 февраля 2020 В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Рабочий вариант, всё завелось с первого раза, спасибо. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 6 месяцев спустя... Allaur Опубликовано: 30 августа 2020 Поделиться Опубликовано: 30 августа 2020 (изменено) Спойлер В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); На странице закладок ошибка выскочила No Width/Height Settings... Did you configure your image sizes? Понимаю, что надо прописать размер на фото, но не понимаю где прописывать... ============================ Сам и отвечу )) В контроллере закладок Это if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_wishlist_width'), $this->config->get('config_image_wishlist_height')); } else { $image = false; } заменить на это if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], 50, 50); } else { $image = false; } Изменено 30 августа 2020 пользователем Allaur Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 2 месяца спустя... Sergya Опубликовано: 3 ноября 2020 Поделиться Опубликовано: 3 ноября 2020 Действительно работает. Только при добавлении закладок и регистрации нового пользователя закладки аннулируются. Сохраняются только в случае, если пользователь есть базе, т.е зарегистрирован. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 1 месяц спустя... Egor2014 Опубликовано: 22 декабря 2020 Поделиться Опубликовано: 22 декабря 2020 Для ocStore 3 не сработало, ошибка: Notice: Undefined index: wishlist in D:\Denver\OpenServer\domains\stamp.ru\catalog\controller\account\wishlist.php on line 119Warning: Invalid argument supplied for foreach() in D:\Denver\OpenServer\domains\stamp.ru\catalog\controller\account\wishlist.php on line 121 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 3 месяца спустя... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 В 25.04.2019 в 19:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Если в закладках ничего не добавлено, и зайти просто в сайт.ру/wishlist/ появляется ошибка. Не подскажите как убрать ошибку ? Notice: Undefined index: wishlist in /var/www/www-root/data/www/сайт/catalog/controller/account/wishlist.php on line 139Warning: Invalid argument supplied for foreach() in /var/www/www-root/data/www/сайт/catalog/controller/account/wishlist.php on line 144 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 В 11.02.2020 в 17:10, docjers сказал: Рабочий вариант, всё завелось с первого раза, спасибо. а если зайти в сайт.ру/wishlist/ без добавления в закладки, ошибки нет? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... sasha3337774 Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 2 минуты назад, igorfelix сказал: а если зайти в сайт.ру/wishlist/ без добавления в закладки, ошибки нет? 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 20 минут назад, sasha3337774 сказал: Спасибо огромное. вернул базовый файл, установил этот модуль и все заработало сразу ! 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 8 месяцев спустя... emelkay Опубликовано: 26 декабря 2021 Поделиться Опубликовано: 26 декабря 2021 В 18.04.2021 в 14:38, igorfelix сказал: Спасибо огромное. вернул базовый файл, установил этот модуль и все заработало сразу ! Спс Бро! Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 1 Перейти к списку тем Похожие публикации Закладки без регистрации Автор: Seriusis, 5 мая 2020 закладки без регистрации закладки (и ещё 1) Теги: закладки без регистрации закладки wishlist 0 комментариев 4 491 просмотр Seriusis 5 мая 2020 [Поддержка] Закладки без регистрации Автор: Seriusis, 5 мая 2020 закладки без регистрации закладки (и ещё 1) Теги: закладки без регистрации закладки wishlist 16 ответов 1 619 просмотров WarStyle 5 октября 2022 Авто Промокод при Регистрации + Авторизация/Регистрация в Modal + Промо Баннер Автор: Parallax, 1 сентября 2022 0 комментариев 1 230 просмотров Parallax 1 сентября 2022 [Поддержка] Подтверждение регистрации email Opencart Автор: OtezVikentiy, 7 сентября 2020 email email уведомление (и ещё 1) Теги: email email уведомление регистрация почта 7 ответов 869 просмотров Beretta 7 января Модуль Модуль Simple - упрощенная регистрация и заказ [Поддержка] 1 2 3 4 806 Автор: deeman, 24 января 2012 регистрация заказ 20 133 ответа 1 719 545 просмотров joy777 В четверг в 11:29 Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Песочница Закладки без регистрации Покупателям Оплата дополнений физическими лицами Оплата дополнений юридическими лицами Политика возвратов Разработчикам Регламент размещения дополнений Регламент продаж и поддержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каталога дополнений Урегулирование споров по авторским правам Полезная информация Публичная оферта Политика возвратов Политика конфиденциальности Платежная политика Политика Передачи Персональных Данных Политика прозрачности Последние дополнения Chameleon - адаптивный универсальный шаблон + Быстрый Старт Автор: 29aleksey Wayforpay API оплата для Opencart 2.3 Автор: bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. Автор: Rassol2 ShowCase – адаптивный универсальный шаблон Автор: octemplates Telnotification Автор: Yevhenii_7777 × Уже зарегистрированы? Войти Регистрация Раздел покупок Назад Приобретенные дополнения Ваши счета Список желаний Альтернативные контакты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Документация История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение Хостинг для OpenCart × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности. Я принимаю
lextorg Опубликовано: 11 апреля 2017 Поделиться Опубликовано: 11 апреля 2017 https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=21136&filter_search=wishlist&filter_license=free Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Op77 Опубликовано: 23 июня 2018 Поделиться Опубликовано: 23 июня 2018 В 11.04.2017 в 11:40, lextorg сказал: https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=21136&filter_search=wishlist&filter_license=free ocStore 2.3.0.2.3 Не обновляется число количество закладок в меню "Мои закладки" (2) вверху, а в админке, когда настраиваю, выдаёт "Warning! You have installed a incompatible version of module for this opencart ..." Кто нибудь чинил? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
legioner26 Опубликовано: 25 апреля 2019 Поделиться Опубликовано: 25 апреля 2019 Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); 3 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 1 месяц спустя... Espresso.Doktor Опубликовано: 17 июня 2019 Поделиться Опубликовано: 17 июня 2019 А есть возможность в OC 2.3, увидеть из админки товары которые добавили в закладки? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Dotrox Опубликовано: 17 июня 2019 Поделиться Опубликовано: 17 июня 2019 3 часа назад, Espresso.Doktor сказал: А есть возможность в OC 2.3, увидеть из админки товары которые добавили в закладки? Из коробки такой возможности нет даже для вишлистов зарегистрированных. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Tom Опубликовано: 17 июня 2019 Поделиться Опубликовано: 17 июня 2019 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 2 месяца спустя... Lilya Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 (изменено) В 17.06.2019 в 18:05, Dotrox сказал: Из коробки такой возможности нет даже для вишлистов зарегистрированных. Это почему? 1. Заходим в админку. 2. АдминПанель -> Покупатели -> Покупатели -> Войти в магазин от имени покупателя. 3. Сморим его wishlist. P.S. ХМ... но это только для одного покупателя, а если статистику смотреть по всем товарам, то этот модуль, предложенный выше. Изменено 24 августа 2019 пользователем Lilya Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Dotrox Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 17 минут назад, Lilya сказал: Войти в магазин от имени покупателя. Вопрос звучал так: В 17.06.2019 в 14:05, Espresso.Doktor сказал: увидеть из админки Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Bn174uk Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 В 17.06.2019 в 14:05, Espresso.Doktor сказал: А есть возможность в OC 2.3, увидеть из админки товары которые добавили в закладки? Устанавливайте пока бесплатный Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Lilya Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Походу код с багом.... Вот в этой строке: unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); Выбивает ошибку: Syntax error, unexpected T_UNSET Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 4 недели спустя... fortoonas Опубликовано: 18 сентября 2019 Поделиться Опубликовано: 18 сентября 2019 В 24.08.2019 в 15:15, Bn174uk сказал: Устанавливайте пока бесплатный Спасибо друг, мне очень пригодился этот модуль!! Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 4 месяца спустя... docjers Опубликовано: 11 февраля 2020 Поделиться Опубликовано: 11 февраля 2020 В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Рабочий вариант, всё завелось с первого раза, спасибо. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 6 месяцев спустя... Allaur Опубликовано: 30 августа 2020 Поделиться Опубликовано: 30 августа 2020 (изменено) Спойлер В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); На странице закладок ошибка выскочила No Width/Height Settings... Did you configure your image sizes? Понимаю, что надо прописать размер на фото, но не понимаю где прописывать... ============================ Сам и отвечу )) В контроллере закладок Это if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_wishlist_width'), $this->config->get('config_image_wishlist_height')); } else { $image = false; } заменить на это if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], 50, 50); } else { $image = false; } Изменено 30 августа 2020 пользователем Allaur Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 2 месяца спустя... Sergya Опубликовано: 3 ноября 2020 Поделиться Опубликовано: 3 ноября 2020 Действительно работает. Только при добавлении закладок и регистрации нового пользователя закладки аннулируются. Сохраняются только в случае, если пользователь есть базе, т.е зарегистрирован. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 1 месяц спустя... Egor2014 Опубликовано: 22 декабря 2020 Поделиться Опубликовано: 22 декабря 2020 Для ocStore 3 не сработало, ошибка: Notice: Undefined index: wishlist in D:\Denver\OpenServer\domains\stamp.ru\catalog\controller\account\wishlist.php on line 119Warning: Invalid argument supplied for foreach() in D:\Denver\OpenServer\domains\stamp.ru\catalog\controller\account\wishlist.php on line 121 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 3 месяца спустя... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 В 25.04.2019 в 19:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Если в закладках ничего не добавлено, и зайти просто в сайт.ру/wishlist/ появляется ошибка. Не подскажите как убрать ошибку ? Notice: Undefined index: wishlist in /var/www/www-root/data/www/сайт/catalog/controller/account/wishlist.php on line 139Warning: Invalid argument supplied for foreach() in /var/www/www-root/data/www/сайт/catalog/controller/account/wishlist.php on line 144 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 В 11.02.2020 в 17:10, docjers сказал: Рабочий вариант, всё завелось с первого раза, спасибо. а если зайти в сайт.ру/wishlist/ без добавления в закладки, ошибки нет? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... sasha3337774 Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 2 минуты назад, igorfelix сказал: а если зайти в сайт.ру/wishlist/ без добавления в закладки, ошибки нет? 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 20 минут назад, sasha3337774 сказал: Спасибо огромное. вернул базовый файл, установил этот модуль и все заработало сразу ! 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 8 месяцев спустя... emelkay Опубликовано: 26 декабря 2021 Поделиться Опубликовано: 26 декабря 2021 В 18.04.2021 в 14:38, igorfelix сказал: Спасибо огромное. вернул базовый файл, установил этот модуль и все заработало сразу ! Спс Бро! Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 1 Перейти к списку тем Похожие публикации Закладки без регистрации Автор: Seriusis, 5 мая 2020 закладки без регистрации закладки (и ещё 1) Теги: закладки без регистрации закладки wishlist 0 комментариев 4 491 просмотр Seriusis 5 мая 2020 [Поддержка] Закладки без регистрации Автор: Seriusis, 5 мая 2020 закладки без регистрации закладки (и ещё 1) Теги: закладки без регистрации закладки wishlist 16 ответов 1 619 просмотров WarStyle 5 октября 2022 Авто Промокод при Регистрации + Авторизация/Регистрация в Modal + Промо Баннер Автор: Parallax, 1 сентября 2022 0 комментариев 1 230 просмотров Parallax 1 сентября 2022 [Поддержка] Подтверждение регистрации email Opencart Автор: OtezVikentiy, 7 сентября 2020 email email уведомление (и ещё 1) Теги: email email уведомление регистрация почта 7 ответов 869 просмотров Beretta 7 января Модуль Модуль Simple - упрощенная регистрация и заказ [Поддержка] 1 2 3 4 806 Автор: deeman, 24 января 2012 регистрация заказ 20 133 ответа 1 719 545 просмотров joy777 В четверг в 11:29 Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Песочница Закладки без регистрации Покупателям Оплата дополнений физическими лицами Оплата дополнений юридическими лицами Политика возвратов Разработчикам Регламент размещения дополнений Регламент продаж и поддержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каталога дополнений Урегулирование споров по авторским правам Полезная информация Публичная оферта Политика возвратов Политика конфиденциальности Платежная политика Политика Передачи Персональных Данных Политика прозрачности Последние дополнения Chameleon - адаптивный универсальный шаблон + Быстрый Старт Автор: 29aleksey Wayforpay API оплата для Opencart 2.3 Автор: bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. Автор: Rassol2 ShowCase – адаптивный универсальный шаблон Автор: octemplates Telnotification Автор: Yevhenii_7777
Espresso.Doktor Опубликовано: 17 июня 2019 Поделиться Опубликовано: 17 июня 2019 А есть возможность в OC 2.3, увидеть из админки товары которые добавили в закладки? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Dotrox Опубликовано: 17 июня 2019 Поделиться Опубликовано: 17 июня 2019 3 часа назад, Espresso.Doktor сказал: А есть возможность в OC 2.3, увидеть из админки товары которые добавили в закладки? Из коробки такой возможности нет даже для вишлистов зарегистрированных. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Tom Опубликовано: 17 июня 2019 Поделиться Опубликовано: 17 июня 2019 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 2 месяца спустя... Lilya Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 (изменено) В 17.06.2019 в 18:05, Dotrox сказал: Из коробки такой возможности нет даже для вишлистов зарегистрированных. Это почему? 1. Заходим в админку. 2. АдминПанель -> Покупатели -> Покупатели -> Войти в магазин от имени покупателя. 3. Сморим его wishlist. P.S. ХМ... но это только для одного покупателя, а если статистику смотреть по всем товарам, то этот модуль, предложенный выше. Изменено 24 августа 2019 пользователем Lilya Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Dotrox Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 17 минут назад, Lilya сказал: Войти в магазин от имени покупателя. Вопрос звучал так: В 17.06.2019 в 14:05, Espresso.Doktor сказал: увидеть из админки Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Bn174uk Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 В 17.06.2019 в 14:05, Espresso.Doktor сказал: А есть возможность в OC 2.3, увидеть из админки товары которые добавили в закладки? Устанавливайте пока бесплатный Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Lilya Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Походу код с багом.... Вот в этой строке: unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); Выбивает ошибку: Syntax error, unexpected T_UNSET Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 4 недели спустя... fortoonas Опубликовано: 18 сентября 2019 Поделиться Опубликовано: 18 сентября 2019 В 24.08.2019 в 15:15, Bn174uk сказал: Устанавливайте пока бесплатный Спасибо друг, мне очень пригодился этот модуль!! Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 4 месяца спустя... docjers Опубликовано: 11 февраля 2020 Поделиться Опубликовано: 11 февраля 2020 В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Рабочий вариант, всё завелось с первого раза, спасибо. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 6 месяцев спустя... Allaur Опубликовано: 30 августа 2020 Поделиться Опубликовано: 30 августа 2020 (изменено) Спойлер В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); На странице закладок ошибка выскочила No Width/Height Settings... Did you configure your image sizes? Понимаю, что надо прописать размер на фото, но не понимаю где прописывать... ============================ Сам и отвечу )) В контроллере закладок Это if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_wishlist_width'), $this->config->get('config_image_wishlist_height')); } else { $image = false; } заменить на это if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], 50, 50); } else { $image = false; } Изменено 30 августа 2020 пользователем Allaur Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 2 месяца спустя... Sergya Опубликовано: 3 ноября 2020 Поделиться Опубликовано: 3 ноября 2020 Действительно работает. Только при добавлении закладок и регистрации нового пользователя закладки аннулируются. Сохраняются только в случае, если пользователь есть базе, т.е зарегистрирован. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 1 месяц спустя... Egor2014 Опубликовано: 22 декабря 2020 Поделиться Опубликовано: 22 декабря 2020 Для ocStore 3 не сработало, ошибка: Notice: Undefined index: wishlist in D:\Denver\OpenServer\domains\stamp.ru\catalog\controller\account\wishlist.php on line 119Warning: Invalid argument supplied for foreach() in D:\Denver\OpenServer\domains\stamp.ru\catalog\controller\account\wishlist.php on line 121 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 3 месяца спустя... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 В 25.04.2019 в 19:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Если в закладках ничего не добавлено, и зайти просто в сайт.ру/wishlist/ появляется ошибка. Не подскажите как убрать ошибку ? Notice: Undefined index: wishlist in /var/www/www-root/data/www/сайт/catalog/controller/account/wishlist.php on line 139Warning: Invalid argument supplied for foreach() in /var/www/www-root/data/www/сайт/catalog/controller/account/wishlist.php on line 144 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 В 11.02.2020 в 17:10, docjers сказал: Рабочий вариант, всё завелось с первого раза, спасибо. а если зайти в сайт.ру/wishlist/ без добавления в закладки, ошибки нет? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... sasha3337774 Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 2 минуты назад, igorfelix сказал: а если зайти в сайт.ру/wishlist/ без добавления в закладки, ошибки нет? 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 20 минут назад, sasha3337774 сказал: Спасибо огромное. вернул базовый файл, установил этот модуль и все заработало сразу ! 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 8 месяцев спустя... emelkay Опубликовано: 26 декабря 2021 Поделиться Опубликовано: 26 декабря 2021 В 18.04.2021 в 14:38, igorfelix сказал: Спасибо огромное. вернул базовый файл, установил этот модуль и все заработало сразу ! Спс Бро! Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 1 Перейти к списку тем Похожие публикации Закладки без регистрации Автор: Seriusis, 5 мая 2020 закладки без регистрации закладки (и ещё 1) Теги: закладки без регистрации закладки wishlist 0 комментариев 4 491 просмотр Seriusis 5 мая 2020 [Поддержка] Закладки без регистрации Автор: Seriusis, 5 мая 2020 закладки без регистрации закладки (и ещё 1) Теги: закладки без регистрации закладки wishlist 16 ответов 1 619 просмотров WarStyle 5 октября 2022 Авто Промокод при Регистрации + Авторизация/Регистрация в Modal + Промо Баннер Автор: Parallax, 1 сентября 2022 0 комментариев 1 230 просмотров Parallax 1 сентября 2022 [Поддержка] Подтверждение регистрации email Opencart Автор: OtezVikentiy, 7 сентября 2020 email email уведомление (и ещё 1) Теги: email email уведомление регистрация почта 7 ответов 869 просмотров Beretta 7 января Модуль Модуль Simple - упрощенная регистрация и заказ [Поддержка] 1 2 3 4 806 Автор: deeman, 24 января 2012 регистрация заказ 20 133 ответа 1 719 545 просмотров joy777 В четверг в 11:29 Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Песочница Закладки без регистрации
Lilya Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 (изменено) В 17.06.2019 в 18:05, Dotrox сказал: Из коробки такой возможности нет даже для вишлистов зарегистрированных. Это почему? 1. Заходим в админку. 2. АдминПанель -> Покупатели -> Покупатели -> Войти в магазин от имени покупателя. 3. Сморим его wishlist. P.S. ХМ... но это только для одного покупателя, а если статистику смотреть по всем товарам, то этот модуль, предложенный выше. Изменено 24 августа 2019 пользователем Lilya Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Dotrox Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 17 минут назад, Lilya сказал: Войти в магазин от имени покупателя. Вопрос звучал так: В 17.06.2019 в 14:05, Espresso.Doktor сказал: увидеть из админки Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Bn174uk Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 В 17.06.2019 в 14:05, Espresso.Doktor сказал: А есть возможность в OC 2.3, увидеть из админки товары которые добавили в закладки? Устанавливайте пока бесплатный Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Lilya Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Походу код с багом.... Вот в этой строке: unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); Выбивает ошибку: Syntax error, unexpected T_UNSET Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 4 недели спустя... fortoonas Опубликовано: 18 сентября 2019 Поделиться Опубликовано: 18 сентября 2019 В 24.08.2019 в 15:15, Bn174uk сказал: Устанавливайте пока бесплатный Спасибо друг, мне очень пригодился этот модуль!! Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 4 месяца спустя... docjers Опубликовано: 11 февраля 2020 Поделиться Опубликовано: 11 февраля 2020 В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Рабочий вариант, всё завелось с первого раза, спасибо. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 6 месяцев спустя... Allaur Опубликовано: 30 августа 2020 Поделиться Опубликовано: 30 августа 2020 (изменено) Спойлер В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); На странице закладок ошибка выскочила No Width/Height Settings... Did you configure your image sizes? Понимаю, что надо прописать размер на фото, но не понимаю где прописывать... ============================ Сам и отвечу )) В контроллере закладок Это if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_wishlist_width'), $this->config->get('config_image_wishlist_height')); } else { $image = false; } заменить на это if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], 50, 50); } else { $image = false; } Изменено 30 августа 2020 пользователем Allaur Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 2 месяца спустя... Sergya Опубликовано: 3 ноября 2020 Поделиться Опубликовано: 3 ноября 2020 Действительно работает. Только при добавлении закладок и регистрации нового пользователя закладки аннулируются. Сохраняются только в случае, если пользователь есть базе, т.е зарегистрирован. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 1 месяц спустя... Egor2014 Опубликовано: 22 декабря 2020 Поделиться Опубликовано: 22 декабря 2020 Для ocStore 3 не сработало, ошибка: Notice: Undefined index: wishlist in D:\Denver\OpenServer\domains\stamp.ru\catalog\controller\account\wishlist.php on line 119Warning: Invalid argument supplied for foreach() in D:\Denver\OpenServer\domains\stamp.ru\catalog\controller\account\wishlist.php on line 121 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 3 месяца спустя... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 В 25.04.2019 в 19:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Если в закладках ничего не добавлено, и зайти просто в сайт.ру/wishlist/ появляется ошибка. Не подскажите как убрать ошибку ? Notice: Undefined index: wishlist in /var/www/www-root/data/www/сайт/catalog/controller/account/wishlist.php on line 139Warning: Invalid argument supplied for foreach() in /var/www/www-root/data/www/сайт/catalog/controller/account/wishlist.php on line 144 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 В 11.02.2020 в 17:10, docjers сказал: Рабочий вариант, всё завелось с первого раза, спасибо. а если зайти в сайт.ру/wishlist/ без добавления в закладки, ошибки нет? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... sasha3337774 Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 2 минуты назад, igorfelix сказал: а если зайти в сайт.ру/wishlist/ без добавления в закладки, ошибки нет? 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 20 минут назад, sasha3337774 сказал: Спасибо огромное. вернул базовый файл, установил этот модуль и все заработало сразу ! 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 8 месяцев спустя... emelkay Опубликовано: 26 декабря 2021 Поделиться Опубликовано: 26 декабря 2021 В 18.04.2021 в 14:38, igorfelix сказал: Спасибо огромное. вернул базовый файл, установил этот модуль и все заработало сразу ! Спс Бро! Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 1 Перейти к списку тем Похожие публикации Закладки без регистрации Автор: Seriusis, 5 мая 2020 закладки без регистрации закладки (и ещё 1) Теги: закладки без регистрации закладки wishlist 0 комментариев 4 491 просмотр Seriusis 5 мая 2020 [Поддержка] Закладки без регистрации Автор: Seriusis, 5 мая 2020 закладки без регистрации закладки (и ещё 1) Теги: закладки без регистрации закладки wishlist 16 ответов 1 619 просмотров WarStyle 5 октября 2022 Авто Промокод при Регистрации + Авторизация/Регистрация в Modal + Промо Баннер Автор: Parallax, 1 сентября 2022 0 комментариев 1 230 просмотров Parallax 1 сентября 2022 [Поддержка] Подтверждение регистрации email Opencart Автор: OtezVikentiy, 7 сентября 2020 email email уведомление (и ещё 1) Теги: email email уведомление регистрация почта 7 ответов 869 просмотров Beretta 7 января Модуль Модуль Simple - упрощенная регистрация и заказ [Поддержка] 1 2 3 4 806 Автор: deeman, 24 января 2012 регистрация заказ 20 133 ответа 1 719 545 просмотров joy777 В четверг в 11:29 Сейчас на странице 0 пользователей Нет пользователей, просматривающих эту страницу.
Lilya Опубликовано: 24 августа 2019 Поделиться Опубликовано: 24 августа 2019 В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Походу код с багом.... Вот в этой строке: unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); Выбивает ошибку: Syntax error, unexpected T_UNSET Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
fortoonas Опубликовано: 18 сентября 2019 Поделиться Опубликовано: 18 сентября 2019 В 24.08.2019 в 15:15, Bn174uk сказал: Устанавливайте пока бесплатный Спасибо друг, мне очень пригодился этот модуль!! Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
docjers Опубликовано: 11 февраля 2020 Поделиться Опубликовано: 11 февраля 2020 В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Рабочий вариант, всё завелось с первого раза, спасибо. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Allaur Опубликовано: 30 августа 2020 Поделиться Опубликовано: 30 августа 2020 (изменено) Спойлер В 25.04.2019 в 15:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); На странице закладок ошибка выскочила No Width/Height Settings... Did you configure your image sizes? Понимаю, что надо прописать размер на фото, но не понимаю где прописывать... ============================ Сам и отвечу )) В контроллере закладок Это if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_wishlist_width'), $this->config->get('config_image_wishlist_height')); } else { $image = false; } заменить на это if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], 50, 50); } else { $image = false; } Изменено 30 августа 2020 пользователем Allaur Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Sergya Опубликовано: 3 ноября 2020 Поделиться Опубликовано: 3 ноября 2020 Действительно работает. Только при добавлении закладок и регистрации нового пользователя закладки аннулируются. Сохраняются только в случае, если пользователь есть базе, т.е зарегистрирован. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Egor2014 Опубликовано: 22 декабря 2020 Поделиться Опубликовано: 22 декабря 2020 Для ocStore 3 не сработало, ошибка: Notice: Undefined index: wishlist in D:\Denver\OpenServer\domains\stamp.ru\catalog\controller\account\wishlist.php on line 119Warning: Invalid argument supplied for foreach() in D:\Denver\OpenServer\domains\stamp.ru\catalog\controller\account\wishlist.php on line 121 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 В 25.04.2019 в 19:27, legioner26 сказал: Может кому пригодится делаем закладки с регистрацией и без регистрации на примере Opencart 2.3, OcStore 2.3 Код написанный мною, можете юзать ))) Идем в контроллер закладок Комментим проверку class ControllerAccountWishList extends Controller { public function index() { /*if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/wishlist', '', true); $this->response->redirect($this->url->link('account/login', '', true)); }*/ Далее после кода if (isset($this->request->get['remove'])) { // Remove Wishlist $this->model_account_wishlist->deleteWishlist($this->request->get['remove']); $this->session->data['success'] = $this->language->get('text_remove'); $this->response->redirect($this->url->link('account/wishlist')); } вставляем if (isset($this->request->get['remove_session'])) { // Remove Wishlist_session unset($this->session->data['wishlist'][array_search($this->request->get['remove_session'],$this->session->data['wishlist'])]); if (empty($this->session->data['wishlist'])) { $this->response->redirect($this->url->link('common/home')); } } Далее после $data['products'] = array(); Вставляем if ($this->customer->isLogged()) { Далее после else { $this->model_account_wishlist->deleteWishlist($result['product_id']); } } Вставляем } else { $results = $this->session->data['wishlist']; foreach ($results as $key => $result) { $product_info = $this->model_catalog_product->getProduct($result); if ($product_info) { if ($product_info['image']) { $image = $this->model_tool_image->resize($product_info['image'], $this->config->get($this->config->get('config_theme') . '_image_wishlist_width'), $this->config->get($this->config->get('config_theme') . '_image_wishlist_height')); } else { $image = false; } if ($product_info['quantity'] <= 0) { $stock = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $stock = $product_info['quantity']; } else { $stock = $this->language->get('text_instock'); } if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) { $price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $price = false; } if ((float)$product_info['special']) { $special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']); } else { $special = false; } $data['products'][] = array( 'product_id' => $product_info['product_id'], 'thumb' => $image, 'name' => $product_info['name'], 'model' => $product_info['model'], 'stock' => $stock, 'price' => $price, 'special' => $special, 'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']), 'remove' => $this->url->link('account/wishlist', 'remove_session=' . $product_info['product_id']) ); } else { unset($this->session->data['wishlist'][$key]); } } } Далее меняем вместо $json['success'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', true), $this->url->link('account/register', '', true), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Вставляем это $json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . (int)$this->request->post['product_id']), $product_info['name'], $this->url->link('account/wishlist')); Если в закладках ничего не добавлено, и зайти просто в сайт.ру/wishlist/ появляется ошибка. Не подскажите как убрать ошибку ? Notice: Undefined index: wishlist in /var/www/www-root/data/www/сайт/catalog/controller/account/wishlist.php on line 139Warning: Invalid argument supplied for foreach() in /var/www/www-root/data/www/сайт/catalog/controller/account/wishlist.php on line 144 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 В 11.02.2020 в 17:10, docjers сказал: Рабочий вариант, всё завелось с первого раза, спасибо. а если зайти в сайт.ру/wishlist/ без добавления в закладки, ошибки нет? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
sasha3337774 Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 2 минуты назад, igorfelix сказал: а если зайти в сайт.ру/wishlist/ без добавления в закладки, ошибки нет? 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 20 минут назад, sasha3337774 сказал: Спасибо огромное. вернул базовый файл, установил этот модуль и все заработало сразу ! 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... 8 месяцев спустя... emelkay Опубликовано: 26 декабря 2021 Поделиться Опубликовано: 26 декабря 2021 В 18.04.2021 в 14:38, igorfelix сказал: Спасибо огромное. вернул базовый файл, установил этот модуль и все заработало сразу ! Спс Бро! Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы оставить комментарий Создать аккаунт Зарегистрируйтесь для получения аккаунта. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите здесь. Войти сейчас Поделиться Больше способов поделиться... Подписчики 1
igorfelix Опубликовано: 18 апреля 2021 Поделиться Опубликовано: 18 апреля 2021 20 минут назад, sasha3337774 сказал: Спасибо огромное. вернул базовый файл, установил этот модуль и все заработало сразу ! 1 Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
emelkay Опубликовано: 26 декабря 2021 Поделиться Опубликовано: 26 декабря 2021 В 18.04.2021 в 14:38, igorfelix сказал: Спасибо огромное. вернул базовый файл, установил этот модуль и все заработало сразу ! Спс Бро! Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Рекомендованные сообщения