Как вывести фильтр по товарам по всему каталогу (TPL) — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
 
(не показано 15 промежуточных версий этого же участника)
Строка 1: Строка 1:
Для того, чтобы вывести фильтр по товарам по всему каталогу, а не по одному разделу, воспользуемся следующей конструкцией, созданной на любой странице контента:
+
'''Актуально для версии 2.9'''
<pre>
+
<br/>
%catalog search('/', 'cenovye_svojstva short_info', 'search', 11)%
 
%catalog getObjectsList('default', 'mode=all')%
 
</pre>  
 
  
где 11 - идентификатор (id) типа данных Объект каталога
+
Для того, чтобы вывести фильтр по товарам по всему каталогу, а не по одному разделу, воспользуемся следующими макросами:
[[Категория:Модуль Каталог]]
+
<source lang="html4strict">
 
+
%catalog getObjectsList('default', '%category_id%', 'false', 'false',4)% 
 
+
</source>
Для того, чтобы вывести фильтр по товарам по всему каталогу, а не по одному разделу, воспользуемся следующей конструкцией:
+
где, ''''default'''' - шаблон по которому будут выводиться товары, '''%category_id%''' - макрос подставляющий id категории, ''''false'''' - пропускаем указание лимита, конечно, если он Вам не нужен', ''''false'''' - оставляем включенным постраничные вывод (если нужно отключить, то пишем true), '''''4''''' - указываем глубину поиска.
 
<source lang="html4strict">
 
<source lang="html4strict">
%catalog search('%category_id%','','default','%type_id%')%
+
%catalog search('%category_id%','cenovye_svojstva short_info','default','%type_id%')%
 
</source>
 
</source>
где, '''%category_id%''' - макрос подставляющий id категории, '''default''' - шаблон по которому будет выводиться фильтр, '''%type_id%''' - макрос подставляющий id типа данных.
+
где, '''%category_id%''' - макрос подставляющий id категории, ''''cenovye_svojstva short_info'''' - группа свойств товара, которая учавствует в фильтре, '''default''' - шаблон по которому будет выводиться фильтр, '''%type_id%''' - макрос подставляющий id типа данных.
  
Данный макрос необходимо написать в шаблоне, по которому выводится фильтр, обычно этот шаблон располагается по адресу:
+
Данные макросы необходимо написать в шаблоне, по которому выводится фильтр, обычно этот шаблон располагается по адресу:<br />
 
''/templates/demoold/tpls/catalog/default.tpl''
 
''/templates/demoold/tpls/catalog/default.tpl''
  
и разместить в блоке $FORMS['objects_block']:
+
и разместить в блоках $FORMS['category'], $FORMS['objects_block']:
 
<source lang="php">
 
<source lang="php">
 +
$FORMS['category'] = <<<END
 +
<p>%descr%</p>
 +
%catalog getCategoryList('default', '%category_id%', 100, 1)%
 +
%catalog getObjectsList('default', '%category_id%', '', '',4)% 
 +
END;
 +
 
$FORMS['objects_block'] = <<<END
 
$FORMS['objects_block'] = <<<END
 
%catalog search('%category_id%','','default','%type_id%')%
 
%catalog search('%category_id%','','default','%type_id%')%
 +
END;
 
</source>
 
</source>
 +
 +
[[Файл:Screen9.png]]
 +
<br/>
 +
 +
 +
[[Категория:Верстка в TPL]]
 +
[[Категория:Модуль Каталог]]

Текущая версия на 16:39, 5 июня 2013

Актуально для версии 2.9

Для того, чтобы вывести фильтр по товарам по всему каталогу, а не по одному разделу, воспользуемся следующими макросами:

%catalog getObjectsList('default', '%category_id%', 'false', 'false',4)%

где, 'default' - шаблон по которому будут выводиться товары, %category_id% - макрос подставляющий id категории, 'false' - пропускаем указание лимита, конечно, если он Вам не нужен', 'false' - оставляем включенным постраничные вывод (если нужно отключить, то пишем true), 4 - указываем глубину поиска.

%catalog search('%category_id%','cenovye_svojstva short_info','default','%type_id%')%

где, %category_id% - макрос подставляющий id категории, 'cenovye_svojstva short_info' - группа свойств товара, которая учавствует в фильтре, default - шаблон по которому будет выводиться фильтр, %type_id% - макрос подставляющий id типа данных.

Данные макросы необходимо написать в шаблоне, по которому выводится фильтр, обычно этот шаблон располагается по адресу:
/templates/demoold/tpls/catalog/default.tpl

и разместить в блоках $FORMS['category'], $FORMS['objects_block']:

$FORMS['category'] = <<<END
<p>%descr%</p>
%catalog getCategoryList('default', '%category_id%', 100, 1)%
%catalog getObjectsList('default', '%category_id%', '', '',4)%  
END;

$FORMS['objects_block'] = <<<END
%catalog search('%category_id%','','default','%type_id%')%
END;

Screen9.png