Опции товаров miniShop2 — создание и вывод

Опции товаров miniShop2 MODX Revo

Опции товаров miniShop2 предназначены для расширения стандартных свойств товара (если их не достаточно) — т.е. их создаем для различных характеристик товара.

Создание опций

Для создания опций перейдите в «Пакеты» -> «miniShop2» -> «Настройки» и перейдите во вкладку «Опции».

Переход во вкладку создания Опций

Для создания опции необходимо нажать кнопку «Создать» и заполнить в появившемся окне дополнительную информацию:

  • Ключ — идентификатор характеристики в системе, определяющий ее плейсхолдер на фронтэнде. Обязательно к заполнению.
  • Название — отображаемый заголовок характеристики.
  • Описание (не обязательно).
  • Единица измерения (если есть).
  • Группа — категория в системе MODX, будет выводиться в табе на странице опций товара.
  • Тип свойства — определяет допустимый формат заполнения значения.

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

Созданные характеристики товаров отображаются на странице товара в соответствующей вкладке.

Вывода опций товара

Для вывода опций нужно использовать сниппет msProductOptions.

Параметры msProductOptions

ПараметрПо умолчаниюОписание
tpltpl.msProductOptionsЧанк оформления
productИдентификатор товара. Если не указан, используется id текущего документа.
onlyOptionsВыводить только этот список опций, указанный через запятую.
ignoreOptionsОпции, которые не нужно выводить в списке, через запятую.
groupsВыводить опции только указанных групп (название или идентификатор категории через запятую)

Вывод опций

Сниппет рассчитывает на работу с чанком Fenom и передаёт в него всего одну переменную $options с массивом вариантов опций.

Вывод по умолчанию: [[msProductOptions]]

Fenom: {'msProductOptions' | snippet}

Как изменить внешний вид вывода

Для изменения внешнего вида, вам нужно сделать копию чанка tpl.msProductOptions, к примеру если работаем с файлами msProductOptions.tpl отредактировать вывод, например так:

{foreach $options as $option}
    <div class="col-6">
        {$option.caption}: <strong>{if $option.value is array} {$option.value | join : ', '}
        {else} {$option.value} {/if}</strong>
    </div>
{/foreach}

и затем вывести с параметром tpl:

{'msProductOptions' | snippet: [
    'tpl' => '@FILE chunks/shop/msProductOptions.tpl'
]}

Как вывести определенные опции и как исключить опции из вывода

Если хотите вывести какие-то определенные опции, воспользуйтесь параметром onlyOptions:

{'msProductOptions' | snippet: [
    'onlyOptions' => 'name_options1,name_options2',
]}

А если хотите вывести все опции кроме каких-то определенных, воспользуйтесь параметром ignoreOptions:

{'msProductOptions' | snippet: [
    'ignoreOptions' => 'name_options1,name_options2',
]}

Вывод опций в выборке (в категории)

modparser

[[!msProductOptions? 
     &product=`[[+id]]` 
     &onlyOptions=`name_options1,name_options2` 
     &tpl=`tpl.msProductOptions.custom`
]]

fenom

{'msProductOptions' | snippet: [
   'product' => '$id',
   'onlyOptions' => 'name_options1,name_options2',
   'tpl' => '@FILE chunks/shop/msProductOptions.tpl',
]}

Дополнительно: Как посмотреть все доступные плейсхолдеры

Вы можете увидеть все доступные плейсхолдеры просто указав пустой чанк:

<pre>[[msProductOptions?tpl=``]]</pre>

все доступные плейсхолдеры

Домашнее задание

Создайте все необходимые опции для карточек товаров (в моем случае для оферов: Первый займ, Повторный займ, Рассмотрение, Ставка, Срок и т.д.). Адрес сайта и партнерскую ссылку вынесу в обычные TV поля. После создания всех опций, пробегитесь по ранее созданным карточками и заполните их.

Понравилась статья? Можно поблагодарить автора: отправив ему донат на
YooMoney
или
Qiwi
. Либо поделившись статьей ☟
Поделиться с друзьями
Алексей

Веб-дизайнер и SEO оптимизатор. Занимаюсь созданием сайтов с 2010 года и их продвижение с 2012 года!

Оцените автора
( Пока оценок нет )
Web-Revenue.ru