25 нояб. 2016 г., 18:23

Вывод похожих записей на pdoResources

Добрый вечер!
Похожие записи на сайте сейчас выводятся так:
[[pdoResources? &parents=`[[*parent]]` &resources=`-[[*id]]` &tpl=`related-prod-item` &limit=`3` &includeTVs=`image` &processTVs=`1` ]]
. Стоит ли выводить похожие записи (товары) через процессор web/catalog/category/products/getdata? (не сомневаюсь, что стоит). Если — да, то каким должен быть код вывода с учетом всех выше перечисленных параметров pdoResources?
Код чанка related-prod-item:
<div class="col-lg-4 col-md-4 col-sm-4 col-xs-12"> <div class="product-box"> <div class="product-image"> <a href="[[~[[+id]]]]"> <img src="[[+tv.image:phpthumbof=`&w=220&h=220`]]" alt="[[+pagetitle]]"> </a> </div> <div class="product-title"><span><a href="[[~[[+id]]]]">[[+pagetitle]]</a></span></div> <div class="row-pr"> <div class="col-lg-7 col-md-7 col-sm-7 col-xs-7"> <a href="[[~[[+id]]]]"> <button class="add-to-cart pull-right"><span>Цена</span></button></a> </div> <div class="col-lg-5 col-md-5 col-sm-5 col-xs-5"> </div> </div> </div> </div>
Спасибо!
web/catalog/category/products/getdata
этот процессор выводит только товары, причём во всех уровнях вложенности, начиная от заданного categoty_id.
Проще использовать процессор web/resources/getdata, указав параметры parent, limit. image подтянется автоматически процессором
Спасибо, Александр! Но, мне бы понять, как это все правильно сверстать. Переношу первый сайт на ShopModxBox… Будет ли правильным такой вывод:
{processor action="web/resources/getdata" ns="modxsite" assign=result} {include file="shop/catalog/list/fetch.tpl"}
или вместо fetch.tpl создать свой related.tpl?
Надо еще исключить текущий документ.
"where" => [ "id:!=" => $modx->resource->id ]
Да, примерно так, только перед вызовом процессора нужно задать ему параметры:
{$params=[ 'param1'=>'value1', 'param2'=>'value2', ... 'paramN'=>'valueN' ]} {processor action="web/resources/getdata" ns="modxsite" params=$params assign=result}
И ещё советую внимательно поизучать файлы из шаблона shopmodx — там достаточно много примеров, что и как.
Если не знакомы со smarty — очень рекомендую сперва ознакомиться с ним: www.smarty.net/docsv2/ru/
Не забывайте, что у вас есть право на доработки нашими силами на стороне вашего сайта, так что если совсем упретесь и нужна будет помощь, обращайтесь.
Спасибо, Николай! Я об этом помню, но оставлю эту возможность на финальный аудит, когда сам все сверстаю.

Добавить комментарий