Пытаюсь сделать чтобы при просмотре категории можно было фильтровать товары по категориям. Для этого добавил в файл model.php функцию
public function getCatCats($cat_id) {
$sql = "SELECT DISTINCT c.*
FROM cms_shop_cats c
WHERE c.id IN
(
SELECT i.category_id
FROM cms_shop_items i
WHERE i.id IN
(
SELECT ic.item_id
FROM cms_shop_items_cats ic
WHERE ic.category_id = '{$cat_id}'
)
)";
$result = $this->inDB->query($sql);
if ($this->inDB->num_rows($result)) {
while($cat = $this->inDB->fetch_assoc($result)){
$cats[$cat['id']] = $cat;
}
}
return $cats ? $cats : false;
}
В файл frontend.php в секцию if ($do == 'view') добавил строки
$categories = $model->getCatCats($root_cat['id']);
$smarty->assign('categories', $categories);
В шаблоне прописываю
{foreach key=num item
=cat from
=$categories} <input type="checkbox" class="category_filter" id="category{$num}" name="filter[categories][]" value="{$cat.id}">
<label for="category{$num}">{$cat.title}</label>
{/Foreach}
Но при попытке просмотреть категорию получаю сообщение о том, что сайт не может обработать запрос. Что я не доделал?