JaxAdam
@JaxAdam
Junior Full-Stack Developer

Как правильно вывести субкатегории?

Добрый вечер!
Как должно выглядеть:
→→Фильтры (категория)
→→→→Воздушные (субкатегория)
→→Продукты Адика (категория)

Как он выводит список:
5d80eccbd4813717316925.jpeg
Разметка списка:
5d80ed64270ff787788810.jpeg
Как видите, последняя категория появилась с классом "catItem_sub", а по задумке это должен был быть класс catItem, поскольку это не подкатегория.
Функция вывода списка категории:
function viewSelect($tree, $class){
        foreach ($tree as $cat){
            echo '<div class="'. $class .'" data-id="' . $cat['id'] . '">' . $cat['category_name'] . '</div>';
            if($cat['childs']){
                $class .= '_sub';
                $this->viewSelect($cat['childs'], $class);
            }
        }
        unset($cat);
    }

Для того чтобы больше поняли структуру приложу var_dump от выводимого списка:
array(2) {
  [0]=>
  array(4) {
    ["id"]=>
    string(1) "7"
    ["category_name"]=>
    string(14) "Фильтры"
    ["parent_id"]=>
    string(1) "0"
    ["childs"]=>
    array(1) {
      [0]=>
      array(3) {
        ["id"]=>
        string(1) "8"
        ["category_name"]=>
        string(18) "Воздушные"
        ["parent_id"]=>
        string(1) "7"
      }
    }
  }
  [1]=>
  array(3) {
    ["id"]=>
    string(1) "9"
    ["category_name"]=>
    string(27) "Продукты Адика"
    ["parent_id"]=>
    string(1) "0"
  }
}
  • Вопрос задан
  • 57 просмотров
Решения вопроса 1
Compolomus
@Compolomus Куратор тега PHP
Комполом-быдлокодер
проверяйте
if($cat['parent_id'] > 0){
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы