Фильтр по интернет-магазину

#
Re: Фильтр по интернет-магазину
И в Определяемой ссылке с параметрами фильтра тоже добавил name=<xsl:value-of select="/shop/name"/>
Medeo
#
Re: Фильтр по интернет-магазину
Попробуйте лучше оставить просто поле ввода названия в форме фильтра в XSL-шаблоне:
<input name="name" size="60" type="text" />
Либо сделать выпадающий список из названий всех товаров(по примеру производителей)
#
Re: Фильтр по интернет-магазину
Если делать по примеру производителей то слишком огромный будет список.
Как вы показали не получается он вообще не ищет по названию (((.
Medeo
#
Re: Фильтр по интернет-магазину
А у Вас точно есть элементы с абсолютно таким значением названия, которое Вы вводите для поиска?
#
Re: Фильтр по интернет-магазину
100% есть.
А можно ли сделать что бы фильтр искал не 100% совпадения например а часть запрашиваемого документа
Medeo
#
Re: Фильтр по интернет-магазину
Поиск по названию  работает только ищет как то не так.
Например товар 123 ищет
а товар Toshiba Satellite P105-S6147 не ищет уже к сожалению
Medeo
#
Re: Фильтр по интернет-магазину
Высылайте данные доступа к разделу администрирования Вашего сайта, а также адрес самого сайта и адрес страницы с фильтром на адрес нашей службы тех. поддержки
#
Re: Фильтр по интернет-магазину
Medeo писал(а):
      /* Ограничиваем по названию */
      if (to_int($_GET['name']) > 0)
      {
         $element['type'] = 0; // 0 - основное св-во, 1 - дополнительное
         $element['name'] = 'shop_items_catalog_name';
         $element['prefix'] = 'AND'; // префикс
         $element['if'] = '='; // Условие
         $element['value'] = to_int($_GET['name']);
         $element['sufix'] = '';
         $param['select'][] = $element;

         $external_propertys['name'] = to_int($_GET['name']);

         /* Применять фильтр */
         $external_propertys['apply_filter'] = true;
      }


Название товара, это строковый, а не числовой тип данных. Поэтому вместо функции to_int() используем to_str(), а вмето проверки if (to_int($_GET['name']) > 0) делаем проверку на пустую строку if (to_str($_GET['name']) != ''. Итого получаем:

      /* Ограничиваем по названию */
      if (to_str($_GET['name']) != ''
      {
         $element['type'] = 0; // 0 - основное св-во, 1 - дополнительное
         $element['name'] = 'shop_items_catalog_name';
         $element['prefix'] = 'AND'; // префикс
         $element['if'] = '='; // Условие
         $element['value'] = to_str($_GET['name']);
         $element['sufix'] = '';
         $param['select'][] = $element;

         $external_propertys['name'] = to_str($_GET['name']);

         /* Применять фильтр */
         $external_propertys['apply_filter'] = true;
      }
Модератор
#
Re: Фильтр по интернет-магазину
Указанные строки не должны идти напрямую в условие! Обязательно обрабатывать quote_smart()!

$element['value'] = quote_smart(to_str($_GET['name']));
#
Re: Фильтр по интернет-магазину
А для версии 5 как правильно прописать что бы фильтр работал по всем разделам магазина, а то код размещенный здесь не работает
Делаю сайты на HostCMS! Подробнее по почте anton.yurzanov@gmail.com
Авторизация