- Это популярное сообщение.
shturmavik
-
Публикации
9 -
Зарегистрирован
-
Посещение
-
Days Won
1
Сообщения, опубликованные пользователем shturmavik
-
-
Кажись я решил всё. отпишусь чуть позднее. Настрою всё
-
Или есть вот такой код:
вставьте его в catalog\controller\product\product.php
например передif ($product_info) {
и увидите результат.
вставьте его в catalog\controller\product\product.php
например передif ($product_info) {
Отлично. Уже есть движение. Но есть не достаток:
Когда например в сессии товара нет, залогинимся и добавим товар в закладки, то уже проверка не работает. Я так понял, что уже надо считывать из базы данных. Так как сессия отключается (в плане код). Какие могут быть дальше действия? -
Поступил совет.
не нужно в моделе что то добавлять. Все данные есть в сессии $this->session->data['wishlist']
Именно его вы можете перебрать, чтобы получить только id товара без ключа.А если мне сделать такое сравнение товара с wishlist
$product_info = $this->model_catalog_product->getProduct($product_id); $this->load->model('account/wishlist'); if ($product_info) { if ($this->session->data['wishlist'] == $this->request->post['product_id']) { $data['AllWishlist'] = true; } }
Или есть вот такой код:
if (isset($this->session->data['wishlist'])) { if (in_array($product_id, $this->session->data['wishlist'])) { echo 'do something'; } }
Но они у меня не сработали или я их ставлю не туда
-
Подскажите. Вставил в catalog/model/account/wishlist.php
public function getAllWishlist() { if ($data = $this->getWishlist()) { $out = array(); foreach ($data as $key => $value) { $out[] = $value['product_id']; } return $out; } else if (isset($this->session->data['wishlist'])) { return $this->session->data['wishlist']; } else { return false; } }
Добавил код в catalog/controller/product/category.php
$this->load->model('account/wishlist'); $data['AllWishlist'] = $this->model_account_wishlist->getAllWishlist();
И в файл catalog/view/theme/default/template/product/category.tpl
<?php if(in_array($product['product_id'], $AllWishlist)) { ?> Этот товар в закладках <?php } ?>
Браузер выдает ошибку
Warning: in_array() expects parameter 2 to be array, boolean given in /home/u146021/best-socksru/www/catalog/view/theme/default/template/product/category.tpl on line 130 -
Как можно на странице product.tpl и category.tpl проверить есть ли товар в Избранном/ Закладках?
Хочу применить css стиль.
Движок OpenCart 2.1.0.2 (rs.1) -
Честно я 10 часов просидел в поисках овтетов с форумов, в основном с англоязычных. Мне сложно понять куда подставлять данные коды: в controller или в view.
Есть ли такая возможность проверить на своём движке или скинуть код и куда подставлять его и я у себя реализую.
Мне, по правде, сложно понять куда это вставить
$this->model_account_wishlist->getTotalWishlist());
Ну и скорее всего это часть какого-то большого кода.
Спасибо, что ответили. Погуглю инфу по вашему куску кода.
-
Как можно на странице product.tpl и category.tpl проверить есть ли товар в Избранном/ Закладках?
Хочу применить css стиль.
Движок OpenCart 2.1.0.2 (rs.1)
Проверить есть ли товар в Wishlist
в Общие вопросы
Опубликовано:
Выше этого кода:
В файл catalog/view/theme/default/template/product/category.tpl заменил кнопку сердечка на такой код:
Теперь если мы залогинимся, то у товара появиться сердечко. Если нажмём, то оно загорится красным и товар добавиться в закладки. Если удалил из закладок, то сердечко перестанет быть красным.
Пример http://best-socks.ru/