Сортировка по определенным полям
Всем доброго вечера. Под вечер в понедельник особенно тяжело работать и туго сображаю уже)), потому прибегаю к вашей помощи. Есть каталог товаров, в котором есть сортировка по двум полям «Название» и «Цена», кроме того есть галка «Только в наличии»:
<!-- catalog panel -->
<div class="cat_panel">
<div class="left">
<div class="panel">
Сортировать по:
<a href="" id="name_good" class="active">Названию</a>
<a href="" id="price_good">Цене</a>
</div>
<div class="chk">
<input type="checkbox" name="" id="stock">
<label for="stock">Только в наличии</label>
</div>
</div>Фильтрацию вызываю таким образом:[[!mFilter2?
&class=`msProduct`
&element=`msProducts`
&includeThumbs=`200x230`
&parents=`[[*id:is=`1`:then=`19`:else=`[[*id]]`]]`
&filters=`ms|price:number,
ms|vendor:vendors`
&tplFilter.outer.ms|price=`tpl.mFilter2.filter.slider`
&tplOuter=`tpl.mFilter2.outer`
&tplFilter.row.ms|price=`tpl.mFilter2.filter.number`
&includeTVs=`attribut_new_good`
&tvPrefix=`tv.`
&showHidden=`1`
&sort=`ms_product|pagetitle:asc,ms|price:asc`
]]Пока сортировка идет по названию и цене, а мне надо чтобы в вызов сниппета включалась та сортировка которая активна в hmtl-коде. В данном случае это: <a href="" id="name_good" class="active">Названию</a> Как можно в сниппет передать например посредством js значение?
Пробовал так:
<script>
fucntion print_result()
{
var r = "ms_product|pagetitle:asc,ms|price:asc";
return r;
}
</script>И не передается в сниппет:...
&tvPrefix=`tv.`
&showHidden=`1`
&sort=`<script>document.write(print_result());</script>`
]]
...Как правильно сделать? Комментарии: 5
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Посмотри документацию и добавь свои сортировки по образу и подобию.
Ты хочешь, что любой посетитель сайта мог выполнять произвольный php у тебя на хостинге?
Есть $_GET и $_POST — через них передаются параметры для PHP, который их должен очень вдумчиво фильтровать. Эти параметры можно использовать, и так же ими можно управлять на javascript.
Ну так и передавай выбранную опцию через $_GET или $_POST параметр — причем здесь вообще javascript? Он нужен только когда ты уже разберешься с логикой работы и захочешь сделать это с помощью ajax.
Ну и у mFilter2 из коробки есть возможность менять чанки — см. параметр &tpls.