Плейсхолдеры сниппетов msProducts и msGallery
Доброго времени суток, Василий!
Вопрос по работе сниппетов msGallery и msProducts.
Я на на странице товара вывожу изображение через [[!msGallery]] в шаблоне страницы товара.
Сниппет msGallery выводит данные через чанк tpl.msGallery.outer в котором у меня есть строка:
В данном случае плейсхолдеры [+name]] и [[+description]] работают.
Теперь страница категории товаров. Здесь работает сниппет msProducts.
Блоки с изображениями выводятся через чанк tpl.msProducts.row-custom, в котором есть строка
Здесь плейсхолдер [[+name]] не работает, а [[+description]] выводит данные из поля «Описание» категории.
Мне нужно вывести подписи к картинкам на странице категории товаров. Т.е. мне нужен плейсхолдер [[+name]].
Вот собственно вопросы:
1.Как узнать перечень всех плейсхолдеров, формируемых сниппетами msGallery и msProducts?
2.Есть ли у сниппета msProducts плейсходдеры для вывода названия и описания картинок?
3.Если нет, то как можно получить доступ и вывести названия и описания картинок на странице категории товара?
Вопрос по работе сниппетов msGallery и msProducts.
Я на на странице товара вывожу изображение через [[!msGallery]] в шаблоне страницы товара.
Сниппет msGallery выводит данные через чанк tpl.msGallery.outer в котором у меня есть строка:
<img src="[[+320x320:default=`/assets/components/minishop2/img/web/ms2_medium.png`]]" width="320" height="320" alt="[[+name]]" title="[[+description]]" id="mainImage" />
В данном случае плейсхолдеры [+name]] и [[+description]] работают.
Теперь страница категории товаров. Здесь работает сниппет msProducts.
Блоки с изображениями выводятся через чанк tpl.msProducts.row-custom, в котором есть строка
<img src="[[+320x320:default=`[[++assets_url]]components/minishop2/img/web/ms2_medium.png`]]" alt="[[+name]]" title="[[+description]]" />
Здесь плейсхолдер [[+name]] не работает, а [[+description]] выводит данные из поля «Описание» категории.
Мне нужно вывести подписи к картинкам на странице категории товаров. Т.е. мне нужен плейсхолдер [[+name]].
Вот собственно вопросы:
1.Как узнать перечень всех плейсхолдеров, формируемых сниппетами msGallery и msProducts?
2.Есть ли у сниппета msProducts плейсходдеры для вывода названия и описания картинок?
3.Если нет, то как можно получить доступ и вывести названия и описания картинок на странице категории товара?
Комментарии: 3
тоже искал как решить подобную задачу — на странице категории вывожу подкатегорию и первые 10 товаров подкатегории с выводом картинки товара и названия в виде ссылки. Сделал примерно так (в fenom):
{*получаем список товаров подкатегории*}
{*$cat2level - подставляем id родительской категории*}
{var $products_cats2level = ('pdoResources' | snippet : ['parents' => $cat2level, 'depth' => '0', 'limit' => 10, 'returnIds' => 1, 'sortdir'=>'asc', 'where' => '{"class_key":"msProduct"}'] | split : ',')}
{if $products_cats2level['0'] ?} {*проверяю есть ли вообще хоть один элемент в массиве*}
<div class="row" >
{foreach $products_cats2level as $product_cats2level}
<a href="{$_modx->makeUrl($product_cats2level,'','','full')}"> {*вывожу ссылку *}
<div id="img_{$product_cats2level}" class="col-xs-2 " style="margin-top: 15px;">
{'msGallery' | snippet : ['product'=>$product_cats2level, 'includeThumbs'=>'mini','tpl'=>'@INLINE <img src="{$files["0"]["mini"]}">']} {*mini - это параметр формата медиаресурса, у меня mini: "mini":{"h":50,"q":90,"far":"1","bg":"ffffff"}*}
</div>
<div id="caption_{$product_cats2level}" class="col-xs-10" style="margin-top: 25px;" >
{'pdoField' | snippet : ['id' => $product_cats2level]} {*название подкатегории*}
</div>
<div class="clear"></div>
</a>
{/foreach}
</div>
{/if}
Как в песне, «Не прошло и полгода». Но за ответ спасибо. Хотя я как то сам решил проблему, может быть даже с помощью fenom, но уже к сожалению не помню.
Но вопрос-то в том, как вывести alt и title к картинкам на странице категории.
Но вопрос-то в том, как вывести alt и title к картинкам на странице категории.
Решил как- то так, может быть не до конца.
{if $_pls['320x320']?}
<div class="product-image center">
<a href="{$id | url}" class="browseProductImage img-responsive" title="[[+pagetitle:title]]">
<img src="{$_pls['320x320']}" alt="[[+longtitle:title]]" title="{$pagetitle | title}" />
</a>
</div>
{else}
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.