Павел Романов

Павел Романов

Был в сети 30 июля 2026, 15:23
Заказы принимаю
Для вставки кода используйте соответствующий инструмент, а то непонятно о чем речь.

А по существу добавьте в ссылку на страницу каталога GET-параметр и названием TV (если они все однотипные и выдают 1 или пусто):
<a href="[[~ID_страницы_каталога? &tag=`vstroenBatt`]]">Встроенная батарея</a>

Сделайте сниппет getFilter
<?php
if(!empty($_GET['tag'])) return '&tvFilters=`'.$_GET['tag'].'===1`';

B каталоге просто добавьте этот сниппет в вызов:
[[pdoResoutrces?
.....
[[!getFilter]]
]]
Сниппет getImages:
<?php
$imgs = explode(',', $input);
foreach($imgs as $path){
    $out .= $modx->getChunk($tpl, array('path'=>$path, 'alt'=>$alt));
}
return $out;

Вызов на странице самого ресурса:
[[getImages? 
&input=`[[*tv_album]]` 
&tpl=`image-tpl`
&alt=`[[*pagetitle]]`
]]

Вызов в чанке pdoResources (естественно, должен стоять параметр &includeTVs=`tv_album`):
[[getImages? 
&input=`[[+tv.tv_album]]` 
&tpl=`image-tpl`
&alt=`[[+pagetitle]]`
]]

Чанк image-tpl:
<img src="[[+path]]" alt="[[+alt]]" />

Для сжатия поставьте pThumb и тогда так:
<img src="[[+path:pthumb=`&w=150&h=100`]]" alt="[[+alt]]" />
Где-то ошиблись. Попробовал сделать тоже самое на локалке:
TV catalog_prices:


TV catalog


Данные в ресурсе:


Вызов в ресурсе:
[[getImageList?
&tvname=`catalog`
&tpl=`catalogItemBox`
]]

Чанк catalogItemBox:
[[+title]]
[[+text]]
[[getImageList?
&value=`[[+price_elements]]`
&tpl=`catalogItemPrice`
]]

Чанк catalogItemPrice:
[[+parameter]]->[[+price]]

Результат:

Просто проверяйте, есть ли в GET что-то.
Попробуйте так:
[[pdoResources?
...
[[!#GET.l:isnot=``:then=` &where=`{"pagetitle:LIKE":"[[!#GET.l]]%"}` `]]
]]

Или так:
[[pdoResources?
...
&where=`[[!#GET.l:isnot=``:then=`{"pagetitle:LIKE":"[[!#GET.l]]%"}`]]`
]]

Или сделайте сниппет:
if(!empty($_GET['l'])) return '&where=`{"pagetitle:LIKE":"'.$_GET['l'].'%"}`';

и его уже просто подставьте в вызов pdoResources:
[[pdoResources?
...
[[!Snippet]]
]]

$char tam берется из foreach.
Сама буква у Вас в GET. Выводите просто:
[[!#GET.l]]