- Проверено Modstore
- Бесплатные будущие обновления
- Работа на тестовом и публичном домене
- 12 месяцев тех. поддержки
Дополнение позволяет сформировать условия для выборки товаров, а также фильтры для mSearch2 и привязать их к ресурсу, после чего использовать в таких сниппетах как msProducts, mSearch2, mFilter2 и прочих, которые в своей работе используют параметр where.
Видео обзор
Видео обзор устарел
Использование
После установки дополнения у всех ресурсов Modx появится вкладка “Условия\фильтры”, где можно сформировать нужные условия и фильтры для выборки товаров.
На странице /manager/?a=system/settings в настройках дополнения через запятую можно указать ID только тех шаблонов, для которых следует выводить вкладку “Условия для выбора товаров”.
В выпадающие списки «Название поля», «Метод фильтрации» и чанки можно вводить свои значения.
Сниппет msPCS
Сниппет msPCS — формирует в нужном формате условия\фильтры для выборки товаров. В зависимости от параметра mode создает следующие плейсхолдеры:
[[+mspcs.where]]
[[+mspcs.option]]
[[+mspcs.tvs]]
[[+mspcs.parents]]
[[+mspcs.filters]]
[[+mspcs.aliases]]
[[+mspcs.sortAliases]]
[[+mspcs.leftJoin]]
[[+mspcs.sort]]
[[+mspcs.tpl]]
[[+mspcs.collapses]] — состояние фильтра (1- свернутый; 0-развернутый)
Пример доступа к состоянию в чанка tpl.mFilter2.filter.outer
{var $key = $table ~ $delimeter ~ $filter}
<fieldset id="mse2_{$key}" collapsed="{$_modx->getPlaceholder('mspcs.collapses')[$key]}">
<h4 class="filter_title">{('mse2_filter_' ~ $table ~ '_' ~ $filter) | lexicon}</h4>
{$rows}
</fieldset>
Сниппет должен быть вызван до того, как будут использованы плейсхолдеры.
Если задано значения для параметра snippet то никаких плейсхолдеров создано не будет, все значения будут автоматически переданы в сниппет который указан в параметре snippet.
Параметры:
- rid — ID ресурса из которого брать условия. Если не указан, используется ID текущего ресурса.
- up — Искать условия у родителей если, у текущего ресурса их нет. Может принимать значения 0|1. По умолчанию 0
- mode — Тип получаемых данных. 0 — условия для выборки товаров (значение по умолчанию); 1 — фильтры для mSearch2; 2 — условия для выборки товаров и фильтры
- snippet — Сниппет, который будет вызываться для вывода результатов работы.
Примеры:
[[msPCS]]
[[msProducts?
&includeTVs=`[[+mspcs.tvs]]`
&optionFilters=`[[+mspcs.option]]`
&where=`[[+mspcs.where]]`
]]
[[!msPCS?
&mode=`1`
&snippet=`msProducts`
]]
[[msPCS?&mode=`1`]]
[[!mFilter2?
&class=`msProduct`
&element=`msProducts`
&parents=`0`
&filters=`[[+mspcs.filters]]`
&aliases=`[[+mspcs.aliases]]`
&sort=`[[+mspcs.sort]]`
[[+mspcs.tpl]]
]]
[[msPCS? &mode=`2`]]
[[!mFilter2?
&class=`msProduct`
&element=`msProducts`
&parents=`0`
&filters=`[[+mspcs.filters]]`
&aliases=`[[+mspcs.aliases]]`
&sort=`[[+mspcs.sort]]`
[[+mspcs.tpl]]
&where=`[[+mspcs.where]]`
]]
[[!msPCS?
&mode=`2`
&snippet=`mFilter2`
&class=`msProduct`
&element=`msProducts`
&parents=`0`
]]
[1.0.19] - 2023-11-15
Исправлено
- where для Tv полей
Последние обсуждения в сообществе MODX.pro