Вывод всех категорий определенного бренда minishop2
Добрый день! Возможно ли вывести все категории на страницу бренда, к которых есть товары с данным производителем?
Может есть готовые решения?
Может есть готовые решения?
Комментарии: 2
Пока в голову пришло сделать только так
{var $dateCategory = '!pdoResources' | snippet : [
'parents'=>'13',
'class' => 'msCategory',
'limit' => '0',
'select' => [
"msCategory" => "*"
,"Product" => "Product.id as product_id"
],
'innerJoin' => [
"Product" => [ "class" => "msProduct", "on" => "Product.parent = msCategory.id AND Product.class_key = 'msProduct' AND Product.published = 1 AND Product.deleted = 0" ],
"Data" => [ "class" => "msProductData", "on" => "Product.id = Data.id" ],
"Vendor" => [ "class" => "msVendor", "on" => "Data.vendor = Vendor.id" ]
],
'where'=> ["Vendor.name:LIKE" => '%'~ $_modx->resource.pagetitle ~'%', "class_key" => "msCategory" ] ,
'sortdir' => 'asc',
'groupby' => 'msCategory.id'
'tpl'=>'@INLINE {$parent},{$id},'
]}
{'!pdoMenu' | snippet:[
'parents' => 13,
'resources'=> $dateCategory,
'level' => 2,
'displayStart' => 0
'tplOuter' => '@INLINE <div class="brand-category__items">{$wrapper}</div>',
'tpl' => '@INLINE <li {$classes}><a href="{$link}?vendors={$_modx->resource.brand_id}">{$pagetitle}</a>{$wrapper}</li>',
'tplInner' => '@INLINE <ul class="brand-category__list {$classnames}">{$wrapper}</ul>',
'tplParentRow' => '@INLINE <div class="brand-category__item"><div class="brand-category__inner"><p class="brand-category__name">{$menutitle}</p>{$wrapper}</div></div>'
]}
Может есть более правильный способ?
По сути всё правильно, может не очень быстро, но при небольшом количестве товаров это будет незаметно.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.