alokey
@alokey

Как вывести переменную GET в tvFilters?

Нужно чтоб каталог фильтровался по get-запросу в снипете getproducts. Необходимо чтоб по заранее создаванным ссылкам формировался список на определенные категории товара.
Вот вывзов getproducts:
[[getProducts? 
&depth=`5` 
&parents=`[[*id]]` 
&tpl=`nizh-product` 
&where=`{"template": 7}`
&tvFilters=`{"tags:LIKE":"%[[!tagGet]]%"}`
]]


Снипет tagGet получает переменную из get
<?php
return $_GET["tags"];


Что делаю не так?
  • Вопрос задан
  • 343 просмотра
Пригласить эксперта
Ответы на вопрос 1
@ChernovGV
Попробуйте сначала руками прописать тег:
&tvFilters=`{"tags:LIKE":"%черный%"}`
Также посмотрите, что возвращает ваш снипет.

Также можете попробовать весь запрос снипитом генерировать как это сделанно у меня:
[[!getPage? 
                    &elementClass=`modSnippet` 
                    &element=`getProducts` 
                    &depth=`1` 
                    &includeTVs=`1`
                    &parents=`[[*id]]` 
                    &tpl=`goods_list` 
                    &pageLimit=`10` 
                    &pageNavVar=`page.nav` 
                    &tvFilters=`[[!get_filters]]`
                    &limit=`1` 
                     ]]

+ снипет get_filters:
<?php
if(isset($_GET['filter_name']) && isset($_GET['filter_value'])){
    return '{"'.$_GET['filter_name'].'":"'.$_GET['filter_value'].'"}';
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы