jonny008 Опубликовано 10 декабря, 2016 Жалоба Поделиться Опубликовано 10 декабря, 2016 Добрый день! Подскажите как автоматически скрыть категории в которых нет товаров или товары не активные. Цитата Ссылка на сообщение Поделиться на другие сайты
ABSORBER Опубликовано 10 декабря, 2016 Жалоба Поделиться Опубликовано 10 декабря, 2016 Скрыть на сайте от глаз или сделать недоступными для посещения? Цитата Ссылка на сообщение Поделиться на другие сайты
jonny008 Опубликовано 12 декабря, 2016 Автор Жалоба Поделиться Опубликовано 12 декабря, 2016 (изменено) Скрыть на сайте от глаз или сделать недоступными для посещения?Скрыть от глаз. Я так понимаю нужно дополнить условие {if $c->visible} {foreach $c->subcategories as $cat} {* Показываем только видимые категории *} {if $cat->visible && $cat->count>0} Но стандартный способ (опубликованный на этом форуме) подсчитывает количество всех товаров, в том числе, нулевых и не активных. Изменено 12 декабря, 2016 пользователем jonny008 Цитата Ссылка на сообщение Поделиться на другие сайты
jonny008 Опубликовано 22 июня, 2017 Автор Жалоба Поделиться Опубликовано 22 июня, 2017 Добавил в Categories.php // Для каждой категории id всех ее деток узнаем $ids = array_reverse(array_keys($pointers)); foreach($ids as $id) { if($id>0) { $pointers[$id]->children[] = $id; if(isset($pointers[$pointers[$id]->parent_id]->children)) $pointers[$pointers[$id]->parent_id]->children = array_merge($pointers[$id]->children, $pointers[$pointers[$id]->parent_id]->children); else $pointers[$pointers[$id]->parent_id]->children = $pointers[$id]->children; $pointers[$id]->count = $this->products->count_products(array('category_id'=>$pointers[$id]->children,'in_stock'=>1 )); // Добавляем количество товаров к родительской категории, если текущая видима if(isset($pointers[$pointers[$id]->parent_id]) && $pointers[$id]->visible) $pointers[$pointers[$id]->parent_id]->products_count += $pointers[$id]->products_count; } }Возросло количество запросов с 17 до 800. Но условие заработало. Категории которые имеют товары с нулевым остатком не отображаются. Подскажите , как поправить. Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.