Проблема с выводом категорий Производителя товаров
Имеется такая картина: есть шаблон страницы производителя товаров. В нем с помощью pdoResources выводил информацию о бренде:
В самом чанке BrandPage выводил уже информацию с помощью тегов [[+name]] [[+country]] и т.д.
И в нем сделал вызов фильтра, чтобы с помощью него вывести категории, в которых есть товары этого бренда.
А по клику на категорию должен выводиться список товаров такой категории и такого бренда.
Сделал такой вывод путем
В BrandOuter просто вывел {$filters} — фильтры,
а оформление фильтра сделал вот таким:
Но такая конструкция работает не полностью.Категории выводятся, но в ссылке вместо [[+id]] пустота.
НО. Если в вызове фильтра в
Не могу понять почему не подхватывается плейсхолдер бренда.
Может есть мысли у кого-нибудь? Если не очень объяснил, могу дополнить.
Или есть вывод категорий бренда по другому, так чтобы следом опять прикрутить фильтр товаров.
{$_modx->runSnippet('!pdoResources',[
'class' => 'msVendor',
'tpl' => '@FILE chunks/Brands/BrandPage.html',
'where' => '{"resource" : '~ $_modx->resource.id ~'}'])}В самом чанке BrandPage выводил уже информацию с помощью тегов [[+name]] [[+country]] и т.д.
И в нем сделал вызов фильтра, чтобы с помощью него вывести категории, в которых есть товары этого бренда.
А по клику на категорию должен выводиться список товаров такой категории и такого бренда.
Сделал такой вывод путем
{$_modx->runSnippet('!mFilter2',['limit' => 20,
'parents' => 2,
'element' => 'msProducts',
'where' => '{"Vendor.id": '~[[+id]]~'}',
'includeThumbs' => 'small',
'pageLimit' => 5,
'filters' => 'parent:categories',
'suggestions' => 0,
'tplOuter' => '@FILE chunks/Brands/BrandOuter.html'
'tplFilter.outer.resource|parent' => '@FILE chunks/Brands/CatFilterOuter.html',
'tplFilter.row.resource|parent' => '@FILE chunks/Brands/CatFilterRow.html'])}В этом вызове фильтруются товары по бренду, ресурс которого равен текущему ресурсу (в условии where)и по категориям.В BrandOuter просто вывел {$filters} — фильтры,
а оформление фильтра сделал вот таким:
<li for="mse2_[[+table]][[+delimeter]][[+filter]]_[[+idx]]" class="[[+disabled]] b-brand__production-item [[+id]]">
<a href="/katalog/brendyi/poisk-po-brendam/?resource|parent=[[+value]]&ms|vendor=[[+id]]" class="b-brand__production-link">[[+title]]</a>
</li>То есть как видно, я думал отфильтровать по категориям и в запрос просто подставлять id бренда ms|vendor=[[+id]], так как дело все происходит еще на странице бренда где такой плейсхолдер доступен.Но такая конструкция работает не полностью.Категории выводятся, но в ссылке вместо [[+id]] пустота.
НО. Если в вызове фильтра в
'where' => '{"Vendor.id": '~[[+id]]~'}', подставить просто цифру = id бренда, то все прекрасно заработает.Не могу понять почему не подхватывается плейсхолдер бренда.
Может есть мысли у кого-нибудь? Если не очень объяснил, могу дополнить.
Или есть вывод категорий бренда по другому, так чтобы следом опять прикрутить фильтр товаров.
Техническая поддержка MODX
Сайт лежит, тормозит или остался без разработчика?
Переезд с MODX 2 на 3, PHP 7 на 8, скорость и безопасность. Поддержка со сроками и ответственностью, а не совет в чате.
Подробнее
Реклама
Комментарии: 4
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
на
?
А если вдруг сниппет не умеет принимать массивы, то