Appixia в Prestashop 1.4.9
Я использую BasicCategoryListActivity для отображения категорий в моем магазине. Я пытаюсь отфильтровать список категорий по определенному идентификатору. Как добавить 2 CategoryId в один фильтр? Это возможно?
Appixia в Prestashop 1.4.9
Я использую BasicCategoryListActivity для отображения категорий в моем магазине. Я пытаюсь отфильтровать список категорий по определенному идентификатору. Как добавить 2 CategoryId в один фильтр? Это возможно?
Этот ответ обновлен для Appixia Mobile Engine 5 с модулем Prestashop 1.0.4.
Модули, которые вы сейчас используете, в основном предназначены для работы с одним фильтром идентификатора категории. Как и все, что связано с Appixia, вы можете обойти большинство ограничений и делать все, что захотите. Вот две идеи:
Обходной путь 1. Реализуйте это с помощью переопределения плагина
При таком подходе вам не нужно ничего менять в своем приложении ... вы можете остаться с существующим модулем и использовать фильтр одиночного идентификатора категории. Установите фильтр для одиночного идентификатора категории и создайте для него какое-нибудь большое несуществующее число (например, 1001).
На самом деле мы сделаем так, чтобы сервер отвечал продуктами для обеих категорий одновременно, когда запрашивается категория 1001.
Вы можете увидеть несколько примеров переопределения плагинов здесь.
Необходимое переопределение находится в Items.php
. Посмотрите на функцию overrideItemListFilters
, она идеально подходит для ваших нужд. Просто найдите тип фильтра Equal
со значением 1001
и измените его в переопределении на фильтр InGroup
с вашими 2 идентификаторами категорий.
Временное решение 2. Переключитесь на более продвинутый модуль списка элементов в приложении
Другой альтернативный подход - только изменить свое приложение и не касаться сервера. Основные действия со списком элементов довольно ограничены. Если вы перейдете к более мощному модулю списка элементов в своем приложении, у вас будет больше контроля над вашими фильтрами. Взгляните на это руководство. Списки элементов типа ItemGridView
поддерживают любой фильтр, поэтому вы можете указать InGroup
напрямую.