Сортировка по опции товара miniShop2
Почему опция с ключём
в ошибках пишет, что нет такой колонки…
p1
не цепляется?в ошибках пишет, что нет такой колонки…
Error 42S22: Unknown column 'p1' in 'on clause'
{$_modx->runSnippet('!mFilter2', [
'parents' => 0,
'element' => 'msProducts,
'leftJoin' => '{"p1":{"class":"msProductOption","on":"p1.key=p1 and p1.product_id = msProduct.id"}}',
'sortAliases' => ['p1' => 'p1'],
'aliases' => 'p1|value==p1',
'sort' => 'p1:desc'
])}
Комментарии: 4
как-то решилась проблема?
Наверное он доку открыл и понял, что leftJoin тут не нужен.
вот решение:
{'!mFilter2' | snippet : [
'class' => 'msProduct',
'element' => 'msProducts',
'loadModels' => 'msTopProducts',
'parents' => $_modx->resource.id,
'showHidden' => '0',
'showUnpublished' => '0',
'hideContainers' => '0',
'showLog' => '0',
'suggestions' => '1',
'ajaxMode' => 'default',
'includeThumbs' => 'medium,480x576',
'tpls' => 'tpl.product.block,tpl.product.row',
'tplOuter' => 'tpl.mFilter2.outer',
'tplFilter.outer.default' => 'tpl.mFilter2.filter.outer',
'tplFilter.row.default' => 'tpl.mFilter2.filter.checkbox',
'filters' => '
resource|parent:parents,
',
'leftJoin'=>'{
"P1": {
"class": "msProductOption",
"on": "P1.key = \'p1\' and P1.product_id = msProduct.id"
},
"P2": {
"class": "msProductOption",
"on": "P2.key = \'p2\' and P2.product_id = msProduct.id"
},
"msTopProduct" : {
"class" : "msTopProduct",
"alias" : "msTopProduct",
"on" : ["msTopProduct.product_id = msProduct.id", "msTopProduct.category_id = ' ~ $_modx->resource.id ~ ' "]
}
}',
'sortAliases' => '{"p1":"P1","p2":"P2"}',
'aliases' => 'p1|value==p1,p2|value==p2',
'sortby' => '{"msTopProduct.rank":"DESC", "msProduct.menuindex":"ASC"}',
'limit' => '9',
'pageLimit' => '7',
'tplPage' => '@INLINE <li class="page-item control"><a class="page-link" href="[[+href]]">[[+pageNo]]</a></li>',
'tplPageWrapper' => '@INLINE <div class="col-12 pagination justify-content-center"><ul class="pagination">[[+first]][[+prev]][[+pages]][[+next]][[+last]]</ul></div>',
'tplPageActive' => '@INLINE <li class="page-item active"><span class="page-link">[[+pageNo]]</span></li>',
'tplPageFirst' => '@INLINE <li class="page-item control"><a class="page-link" href="[[+href]]"><i class="fas fa-angle-double-left"></i></a></li>',
'tplPageLast' => '@INLINE <li class="page-item control"><a class="page-link" href="[[+href]]"><i class="fas fa-angle-double-right"></i></a></li>',
'tplPagePrev' => '@INLINE <li class="page-item control"><a class="page-link" href="[[+href]]"><i class="fas fa-angle-left"></i></a></li>',
'tplPageNext' => '@INLINE <li class="page-item control"><a class="page-link" href="[[+href]]"><i class="fas fa-angle-right"></i></a></li>',
'tplPageSkip' => '@INLINE <li class="page-item disabled"><span>...</span></li>',
'tplPageFirstEmpty' => '@INLINE ',
'tplPageLastEmpty' => '@INLINE ',
'tplPagePrevEmpty' => '@INLINE ',
'tplPageNextEmpty' => '@INLINE ',
'ajaxTplMore' => '@INLINE <button class="btn btn-outline-danger rounded-0 my-3 btn-more">Загрузить ещё</button>',
]}
как я долго искал это решение, спасибо!!!
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.