Добрый день, появилась задача сделать многоуровневый каталог, но столкнулся с некоторыми трудностями.
Из готовых плагинов типа e-commerce или phpshop не подходит, много лишнего
Цель каталога:
1. Создавать многоуровневые разделы
2. Прикреплять к каталогам изображения
3. Выводить описание рядом с каждой рубрикой
Начну с простого, что удалось сделать:
второй этап – Прикреплять к каталогам изображения
с этой задачей очень просто справился плагин Category & Page Icons
третий этап – Выводить описание рядом с каждой рубрикой
отредактировал category-template.php, а именно примерно в 841 строку добавил:
$link .= $cat_name . '</a><div class="cat_description">' . esc_attr( strip_tags( apply_filters( 'category_description', $category->description, $category ) ) ) . '</div>';
теперь после каждой рубрики добавляется описание которое указывается при создании рубрики (категории)
и наконец мой проблемный этап, первый – Создавать многоуровневые разделы
На этом этапе смог сделать только следующую структуру каталога:
Категория + Подкатегория ++ Запись
На страницу выводятся родительские категории, при их нажатии попадаем в Архив "archive.php" предварительно вставив туда код:
if (is_category() and get_category($cat)->parent) {
//Если это подкатегория выводим список записей из подкатегории
} else {
//Иначе выводим список подкатегорий
wp_list_categories('hide_empty=0&depth=0&title_li=&child_of='.$cat);
}
вот тут я и попал в ступор, как же действовать дальше? этот код работает только с двухуровневым каталогом, но мы знаем, что в wordpress можно создавать так же и более глубокие вложенности подрубрик
Но как это перевести в код давая понять wordpress когда нужно вывести записи а когда список подкатегорий, и тем более давая ему понять уровень вложенности?
Конечно возможно я все усложняю, но пока ничего подходящего не нашел более чем этот вариант.
Более глубокие вложенности обрабатываются как и обычные: если есть вложенные рубрики в текущей рубрике – выводим их, а если нет – выводим посты.
Логическое решение понятно, но как это перевести в код? как определять уровень вложенности ???
Через wp_list_cat… получаю список вложенных рубрик в текущей рубрике.