И снова - расширенный фильтр по допам на главной

#
И снова - расширенный фильтр по допам на главной
Просмотрел всю информацию на форуме плюс апи.

Самая ближайшая ссылка по теме - http://www.hostcms.ru/forums/17/3640/

Структура каталога - на главной нет товаров, товары раскиданы по категориям. Вывод производится с указанием  $param['current_group_id'] = false; , то отображаются элементы всех групп. Xsl шаблон - чисто фильтр по товарам. Если в динамической инет магаза не указывать $param['current_group_id'] = false;, то толку от фильтра ноль. Как сделать так, чтобы фильтр работал без передачи false группы в динамической?

И ещё вопрос - как отобразить на главной в фильтре - дополнительные св-ва товаров? при системе $param['current_group_id'] = false; отображаются только производители и продавцы.

Может конечно использовать эти параметры, но при включение их в вызов ничего не происходит.
Цитата:

# $param['xml_show_group_property'] разрешает указание в XML значений свойств групп магазина, по умолчанию true
# $param['xml_show_group_property_id'] массив идентификаторов дополнительных свойств групп для отображения в XML. Если не не передано - выводятся все свойства
# $param['xml_show_item_property'] разрешает указание в XML значений свойств товаров магазина, по умолчанию true
# $param['xml_show_item_property_id'] массив идентификаторов дополнительных свойств товара для отображения в XML. Если не не передано - выводятся все свойства


Скорей всего править динамическую инет магазина? Куда копать?

Вызов производится так

<?php
   $shop = new shop();
   $ShopId = 1;
   $param['xml_show_group_type'] = 'all';
   $param['current_group_id'] = false;
   $xsl_catalog = 'Фильтр-МагазинКаталогТоваров';
   $shop->ShowShop($ShopId, $xsl_catalog, $param);
?>


Заранее спасибо.
#
Re: И снова - расширенный фильтр по допам на главной
Кто-нибудь решил поставленную задачу?
Может кто-то написал уже что-то? сколько будет стоить?
#
Re: И снова - расширенный фильтр по допам на главной
Mihey2007 писал(а):
Как сделать так, чтобы фильтр работал без передачи false группы в динамической?
- если нужно, чтобы при фильтрации выбирались товары из всех групп магазина, то никак. Вам придется передать false в качестве идентификатора текущей группы.
Mihey2007 писал(а):
как отобразить на главной в фильтре — дополнительные св-ва товаров?
- в разделе администрирования перейдите внутрь вашего магазина(т.е. в его корень), после перейдите в меню "Товар" -> "Свойства товаров для группы", отметьте необходимые свойства и нажмите на лампочку "Включить доступ" внизу таблицы. Также у этих свойств(при их редактировании) в поле "Способ отображения свойства в фильтре" должно быть выбрано любое подходящее значение кроме "Не отображать".
#
Re: И снова - расширенный фильтр по допам на главной
Спасибо за ответ. Про свойства стормозил )))

То есть получается, если для вывода фильтра -  я в макете или в нужном шаблоне вызов делаю

<?php
   $shop = new shop();
   $ShopId = 1;
   $param['xml_show_group_type'] = 'all';
   $param['current_group_id'] = false;
   $xsl_catalog = 'Фильтр-МагазинКаталогТоваров';
   $shop->ShowShop($ShopId, $xsl_catalog, $param);
?>


и если у меня в динамической тоже не прописано $param['current_group_id'] = false; то толку от фильтра ноль.
#
Re: И снова - расширенный фильтр по допам на главной
Mihey2007 писал(а):
и если у меня в динамической тоже не прописано $param['current_group_id'] = false; то толку от фильтра ноль
- да, конечно. Ведь этот вызов метода ShowShop, помещенный вами в коде шаблона, например, осуществит только показ формы фильтра на странице сайта, а обработка этой формы(после ее отправки на сервер) по умолчанию происходит в коде типовой динамической страницы магазина, т.к. action у формы фильтра содержит путь к корневому разделу магазина(а он, также все разделы магазина, соответствующие его группам и товарам, обрабатываются именно в коде тип. дин. страницы магазина). Поэтому false для $param['current_group_id'] нужно добавлять еще и там(делать это можно внутри условия: если пришли данные с формы фильтра, например).
#
Re: И снова - расширенный фильтр по допам на главной
Решил так - поставил в коде динамической условие, если главная то передаем false (как и писали на форуме). число выводимых товаров, чтобы не пугало поставил 10.

if ($param['current_group_id'] == 0)
{
$param['current_group_id'] = false;
}


вставляю код например слева над меню категорий инет магазина в макете. Можно поставить условие, чтобы показывать только на главной (закомментировано)

<?php
   //if ($GLOBALS['shop_item_path']['group'] == 0){
   $shop = new shop();
   $ShopId = 1;
   $param['xml_show_group_type'] = 'all';
   $param['current_group_id'] = false;
   $xsl_catalog = 'Фильтр-МагазинКаталогТоваров';
   $shop->ShowShop($ShopId, $xsl_catalog, $param);
   //}
?>


В xsl шаблоне магазина добавляю условие если главная, то фильтр в основном окне не показывать и  если использовали фильтр, то не показывать категории. Теперь в результате по фильтру происходит вывод списка товаров в основном окне, соответствующих условию с любой страницы магазина.

Спасибо за помощь!
#
Re: И снова - расширенный фильтр по допам на главной
Попробовал Ваше решение

Цитата:
Поэтому false для $param['current_group_id'] нужно добавлять еще и там(делать это можно внутри условия: если пришли данные с формы фильтра


код динамической уменьшился на одно условие )))

Ещё раз спасибо )))
#
Re: И снова - расширенный фильтр по допам на главной
Mihey2007, пожалуйста)

#
Re: И снова - расширенный фильтр по допам на главной
Спасибо! Наконец-то нашел что искал! =)
Весь форум вдоль и поперек перерыл!
FobosMIX
Авторизация