Ответить Новая тема Новый опрос 
Всего: 2 1 2 >
 Как скрыть товар который нет в наличии?
yuazakharov


Новичок
Сообщений: 17
Откуда: Якутск
Регистрация: 21-03-2013


26-05-2015 15:25
День добрый! Как скрыть (чтоб вообще не показывало) товар который нет в наличии?
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


26-05-2015 15:57
Цитата:( yuazakharov @ 26-05-2015 16:25 Смотреть сообщение )
День добрый! Как скрыть (чтоб вообще не показывало) товар который нет в наличии?

Правильный способ:
Написать отдельный модуль, который будет отслеживать заказы или изменение товарной базы и отключать товар если кол-во товара равно нулю.


Второй способ - правка ядра.
Пример для списка категорий:
Откройте файл: /classes/Category.php
после:
Код:
WHERE cp.`id_category` = '.(int)$this->id.

добавьте:
Код:
' AND (p.`quantity` > 0 OR IFNULL((SELECT SUM(`quantity`) FROM `'._DB_PREFIX_.'product_attribute` paz WHERE p.`id_product` = paz.`id_product`), 0) > 0) '.


после:
Код:
WHERE product_shop.`id_shop` = '.(int)$context->shop->id.'

добавьте:
Код:
AND (p.`quantity` > 0 OR IFNULL((SELECT SUM(`quantity`) FROM `'._DB_PREFIX_.'product_attribute` paz WHERE p.`id_product` = paz.`id_product`), 0) > 0)
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
yuazakharov


Новичок
Сообщений: 17
Откуда: Якутск
Регистрация: 21-03-2013


26-05-2015 16:39
Почему-то все равно видно, хотя и сделал как вы и написали.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


26-05-2015 17:07
Цитата:( yuazakharov @ 26-05-2015 17:39 Смотреть сообщение )
Почему-то все равно видно, хотя и сделал как вы и написали.

Приложите снимок экрана (карточку товара: вкладка общая и вкладка кол-во) любого из товаров который отображается на странице категории при внесенных правках sql кода.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
yuazakharov


Новичок
Сообщений: 17
Откуда: Якутск
Регистрация: 21-03-2013


26-05-2015 17:39
Цитата:( Алекс @ 26-05-2015 20:07 Смотреть сообщение )
Цитата:( yuazakharov @ 26-05-2015 17:39 Смотреть сообщение )
Почему-то все равно видно, хотя и сделал как вы и написали.
Приложите снимок экрана (карточку товара: вкладка общая и вкладка кол-во) любого из товаров который отображается на странице категории при внесенных правках sql кода.

Вот


Изображения:
1.jpg - Размер файла153.81KB, Скачиваний: 500 (Нажмите для увеличения) 2.jpg - Размер файла145.67KB, Скачиваний: 389 (Нажмите для увеличения) 3.jpg - Размер файла111.66KB, Скачиваний: 465 (Нажмите для увеличения) 4.jpg - Размер файла116.33KB, Скачиваний: 445 (Нажмите для увеличения)
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


26-05-2015 17:55
Цитата:( yuazakharov @ 26-05-2015 18:39 Смотреть сообщение )
Вот

Все правки выполнены верно.

Цитата:( yuazakharov @ 26-05-2015 17:39 Смотреть сообщение )
Почему-то все равно видно, хотя и сделал как вы и написали.

Подобное возможно если установлен модуль фильтра "blocklayered" или любой другой модуль работающий в хуке "productListAssign" или используются переопределения (файл: /override/controllers/front/CategoryController.php)
Если модуль "blocklayered" установлен: правку описанную выше необходимо вносить в модуль фильтра.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
yuazakharov


Новичок
Сообщений: 17
Откуда: Якутск
Регистрация: 21-03-2013


26-05-2015 21:42
Цитата:( Алекс @ 26-05-2015 20:55 Смотреть сообщение )
Подобное возможно если установлен модуль фильтра "blocklayered" или любой другой модуль работающий в хуке "productListAssign" или используются переопределения (файл: /override/controllers/front/CategoryController.php)
Если модуль "blocklayered" установлен: правку описанную выше необходимо вносить в модуль фильтра.


Благодарю! С blocklayered отключил фильтр по наличию товаров. Теперь в категориях не видны, но, на главной странице в блоке "Новые товары" все равно видны.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


26-05-2015 22:56
Цитата:( yuazakharov @ 26-05-2015 22:42 Смотреть сообщение )
Теперь в категориях не видны, но, на главной странице в блоке "Новые товары" все равно видны.

Выше об этом писал!
Для каждого модуля, каждой отельной страницы необходимо вносить подобные правки.

Для модуля новые товары необходимо внести изменения в файл /classes/Product.php, метод: getNewProducts
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
yuazakharov


Новичок
Сообщений: 17
Откуда: Якутск
Регистрация: 21-03-2013


27-05-2015 08:06
Цитата:( Алекс @ 27-05-2015 01:56 Смотреть сообщение )
Цитата:( yuazakharov @ 26-05-2015 22:42 Смотреть сообщение )
Теперь в категориях не видны, но, на главной странице в блоке "Новые товары" все равно видны.
Выше об этом писал!
Для каждого модуля, каждой отельной страницы необходимо вносить подобные правки.

Для модуля новые товары необходимо внести изменения в файл /classes/Product.php, метод: getNewProducts

Извини за не внимательность.
Благодарю за помощь!
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
yuazakharov


Новичок
Сообщений: 17
Откуда: Якутск
Регистрация: 21-03-2013


27-05-2015 08:39
Цитата:( Алекс @ 27-05-2015 01:56 Смотреть сообщение )
Для модуля новые товары необходимо внести изменения в файл /classes/Product.php, метод: getNewProducts

Даже двум запросам одновременно вставил, а товар все равно показывается. На сколько я вижу, больше некуда вставить еще. Что не так делаю?


Изображения:
1.jpg - Размер файла135.9KB, Скачиваний: 423 (Нажмите для увеличения)
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Ответить Новая тема Новый опрос 
Всего: 2 1 2 >