- Как создать и вывести дочерние рубрики WordPress. Примеры вывода подрубрик на странице категории.
- Как создать подрубрику в WordPress?
- Первый. С помощью меню «Рубрики».
- Второй. При редактировании записи.
- Как вывести дочерние подкатегории WordPress?
- Пример 1. Используем функцию get_terms().
- Пример 2. С использованием функции get_categories().
- WordPress: выводим список подкатегорий в категориях, записях
- Вывод дочерних категорий в wordpress
- Класс Walker для wp_list_categories
- Как вывести подрубрики на странице рубрик в WordPress?
- get_categories() WP 2.1.0
- Возвращает
- Шаблон использования
- Использование
- Аргументы передаваемые в $args
- Примеры
- #1 Выпадающий список
- #2 Список категорий и их описание
Как создать и вывести дочерние рубрики WordPress. Примеры вывода подрубрик на странице категории.
Рубрики в WordPress могут иметь иерархическую структуру, которая заключается во вложенности одних категорий в другие. Используется такой подход в построении правильного формата ЧПУ ссылок при продвижении сайта и грамотной структуризации контента. Например, создается категория «Квартиры», к которой будет добавлена вложенная подкатегория «Однокомнатные». Url такой структуры будет иметь вид: site.com/apartments/one-room/item1.html.
В этой статье мы разберемся, как создавать и выводить дочерние на данном движке.
Как создать подрубрику в WordPress?
Сделать это можно двумя способами.
Первый. С помощью меню «Рубрики».
1. Переходим в меню «Записи» — «Рубрики».
2. В форме «Добавить новую рубрику», заполняем поля, и обязательно указываем родительскую рубрику, выбрав из выпадающего списка нужную категорию.
3. Нажимаем кнопку «Добавить новую рубрику».
4. Справа, в списке созданных категорий вы увидите древовидную структуру категорий вашего сайта.
Второй. При редактировании записи.
1. Переходим в меню «Записи» и выбираем либо добавить новую, либо редактировать уже созданную.
2. Справа, в блоках редактирования записи находим вкладку «Рубрики», нажимаем ее и снизу увидим ссылку с названием «Добавить новую рубрику». Нажимаем ее.
3. Перед вами откроются поля для создания категории. Заполняем название рубрики и добавляем родительскую категорию.
4. После этого вы можете активировать чекбокс напротив только что созданной подкатегории, и запись будет привязана к ней.
Как вывести дочерние подкатегории WordPress?
Вложенная структура рубрик используется на многих сайтах для создания удобной цепочки навигации для пользователей. Одна из часто встречаемых задач – это вывод дочерних подрубрик на странице родительской категории. В WordPress по умолчанию в качестве шаблона для категории используются файлы темы: category.php или же archive.php. Именно в них мы и будем добавлять код для вывода подкатегорий.
Пример 1. Используем функцию get_terms().
Вначале мы определяем id текущей категории, с помощью кода.
Далее мы задаем параметры для функции get_terms(), это таксономию и аргументы выборки.
Получаем рубрики, проверяем, созданы ли они, и с помощью foreach выводим их.
Пример 2. С использованием функции get_categories().
Алгоритм тут похожий. Сначала определяем текущую категорию и ее id.
Далее с помощью функции is_category() проверяем, находимся ли мы на странице категории. А используя функцию count(), запускаем вторую дополнительную проверку на наличие дочерних категорий в заданной (родительской категории).
Переменная $current_cat включает в себя данные категории, в которой мы находимся в текущий момент. И с помощью функции wp_list_categories(), мы выводим список дочерних категорий. Для этой функции задаются параметры, например child_of, он определяет рубрику, подрубрики которой нужно выводить. Параметр title_li убирает заголовок блока, который по умолчанию выводиться.
На этом сегодня все. Надеюсь материал был для вас полезен.
Источник
WordPress: выводим список подкатегорий в категориях, записях
Сегодня столкнулся с довольно нетривиальной задачкой. Как вам известно у меня на поддомене termins.evgmoskalenko.com есть проект — «Терминология». Словарь: seo, html, css и интернет терминов.
Дак вот на днях задумал сделать одно очень интересное решение, реализовать вывод подкатегорий:
- в родительских рубриках;
- в дочерних категориях этой же родительской рубрики;
- а также в записях, которые находятся в данной родительской рубрике или в дочерних ее категориях.
Иными словами, мы будем выводить список подкатегорий wordpress (список дочерних категорий) на всех страницах, которые принадлежат родительской категории — записи, подкатегории.
Звучит не совсем понятно, но дальше Вы поймете, зачем я все так усложнил, и зачем мне такая навигация. Давайте представим, что есть категория на сайте — «Интернет термины». У данной категории есть подкатегории, которые позиционируются, как алфавитный рубрикатор.
- А (буквачки алфавита русского или латинского)
- Б
- В
То есть, если есть термин «Поисковые системы», начинается на букву «П», есть смысл поместить данный термин в категорию «Интернет термины» + в дочернюю ей категорию «П», что делает навигацию на сайте, а также поиск необходимой статьи куда приятней, быстрей и проще.
Такое хитрое решение можно применять на любом сайте, где структура примерно следующая:
- Подкатегория 1.1
- Подкатегория 1.2
- Подкатегория 1.3
- Подкатегория 1.4
- Подкатегория 1.5
Задумал такую реализацию, чтобы такие подрубрики (дочерние категории wordpress) показывались на всех страничках связанных с термином, в частности: в родительских категориях, подкатегориях родительской категории, а также на самой странице термина, статьи, записи. Которая непосредственно находится в дочерней категории.
Для реализации данного метода, нам понадобиться написать класс Walker для wp_list_categories + вывод wp_list_category для категорий, подкатегорий, записей.
Вывод дочерних категорий в wordpress
Вставляем данный код в то место, где хотим выводить подкатегории (дочерние категории в WordPress). Это может быть: header, sidebar, или же footer вашего сайта.
Класс Walker для wp_list_categories
Класс Walker для wp_list_categories используется для построения меню, стилизации, добавления своих классов в список категорий. Вставляем данный код в файлик functions.php:
Вот в принципе и все, теперь перемещение по рубрикам и подрубрикам сайта, осуществляется всего в одно или два щелчка мышкой. При этом у вас всегда есть возможность быстрого перемещения по дочерним категориям находясь в их родительской категории или записях.
Делайте навигацию предельно понятно и удобно для своих посетителей. Даже если реализация довольно сложная и муторная.
Все вопросы, предложения и просьбы, пишите в комментариях к статье. 🙂
Источник
Как вывести подрубрики на странице рубрик в WordPress?
Доброго времени суток. 🙂
Эта статья будет полезной для тех, кому близко создание или доработка тем WordPress. В ней я покажу как на странице рубрики вывести список подрубрик. Ни для кого не секрет, что WordPress имеет возможность разделять записи на рубрики, при этом их можно разбить на подрубрики. Такая структура очень удобная и позволяет разделять контент так как захочет автор. Именно эти подрубрики и можно выводить на странице рубрики, чтобы упростить поиск для посетителей. Недавно я сам воспользовался данным методом и применил его на одном из сайтов заказчика, после чего вспомнил, что об этом способе я не писал здесь и вот теперь наверстываю упущенное.
Последний сайт, на котором я применил данный метод был о фермерстве и готовый результат там выглядел примерно так:
Чтобы получить такой результат нужно в первую очередь определить где у вас выводится список записей из определенной рубрики. Чаще всего это файл — category.php, так же бывают темы, где вывод записей рубрики объединен с архивами, тогда это файл — archive.php.. Все зависит от конкретной темы и цикл записей рубрики, может быть совсем в другом файле. Вы должны найти такой файл и перед циклом записей разместить следующий код:
Давайте рассмотрим код поближе, чтобы разобрать, за что отвечает каждая строка:
- — Как видите по коду, наш код мы обернули в теги PHP, для того чтобы добавить код в среду HTML. Если же вам надо будет добавить его в PHP то удалите их.
- if (is_category()) <— Проверяем размещен ли данный код на странице категории, если да то продолжаем обработку кода, в противном случаи ничего не произойдет.
- if (count(get_categories(‘child_of=’.$cat))) — Вторая проверка на то, есть ли у рубрики подрубрики. Если таковых нет, то в месте куда вы добавили код ничего не добавится.
- echo ‘
- ‘;
- $current_cat=get_query_var(‘cat’); — создаем переменную, которая узнает в какой категории мы находимся.
- wp_list_categories(‘child_of=’.$current_cat.’&title_li=&show_count=0′) — запускаем функцию для вывода рубрик, в данном случаи подрубрик. Осуществляется это благодаря параметрам заданным в ней:
- child_of=’.$current_cat.’ — параметр что и указывает рубрику, подрубрики которой выводить.
- title_li= — запрещаем выводить заглавие для списка подрубрик.
- show_count=0 — Настраиваемый параметр, что означает — выводить ли рядом с названием подрубрики количество записей в ней. 0 — не выводить. 1 — выводить.
- echo ‘
‘; — закрываем наш список.
Чтобы это выглядело как на картинке выше, нужно задать стили.
Можете их менять и задавать согласно своим требованиям. Весь данный код очень простой и настроить его на своем сайте не должно составить труда. Самое сложное, наверное, найти правильное место.
Если вы справились с этой задачей, то результат не должен заставить себя ждать. Надеюсь эта статья помогла вам и вы сделали у себя список подрубрик.
На этом все, спасибо за внимание. 🙂
Если Вам был полезным мой труд, можете финансово поддержать сайт или отключить блокировщик рекламы, что займет 2 минуты 🙂
Источник
get_categories() WP 2.1.0
Возвращает массив объектов содержащих информацию о категориях.
Параметры передаваемые этой функции очень похожи на параметры передаваемые функции wp_list_categories() и могут быть переданы как в виде массива, так и в виде строки запроса: type=post&order=DESC .
Хуки из функции
Возвращает
Массив . Массив объектов рубрик (категорий).
Шаблон использования
Использование
Аргументы передаваемые в $args
Полный список параметров и их значений смотрите в описании get_terms().
Тип категорий, которые будут получены.
- post — категории для постов (по умолчанию);
- link — разделы ссылок.
По умолчанию: «post»
child_of(строка) Получить дочерние категории (включая все уровни вложенности), указанной категории. В параметре указывается ID родительской категории (категория, вложенные категории которой нужно показать). parent(число) Получает категории, родительская категория которых указана в этом параметре. Отличие от child_of в том, что будет показан один (только первый) уровень вложенности.
По умолчанию: » orderby(строка)
Сортировка полученных данных по определенным критериям. Например, по количеству постов в каждой категории или по названию категорий. Доступны следующие критерии:
- id или term_id — по ID.
- name — по названию. По умолчанию.
- count — по полю count в term_taxonomy — по количеству записей.
- slug — по альтернативному названию.
- description — по описанию.
- term_group — по группе.
parent — по полю parent.
По умолчанию: «name»
Направление сортировки, указанной в параметре «orderby»:
- ASC — по порядку, от меньшего к большему (1, 2, 3; a, b, c);
- DESC — в обратном порядке, от большего к меньшему (3, 2, 1; c, b, a).
Получать или нет пустые категории (не имеющие записей):
- 1 (true) — не получать пустые,
- 0 (false) — получать пустые.
По умолчанию: true
hierarchical(логический) Если параметр установлен в true, то в результат будут включены пустые дочерние категории, дочерние категории которых имеют записи (непустые).
По умолчанию: true exclude(строка/массив) Исключить какие-либо категории из списка. Нужно указывать ID категорий через запятую или в массиве. Если этот параметр указан, параметр child_of будет отменен.
По умолчанию: » include(строка/массив) Вывести списком только указанные категории. Указывать нужно ID категорий через запятую или в массиве.
По умолчанию: » number(число) Лимит. Число категорий, которые будут получены. По умолчанию без ограничений — будут получены все категории. pad_counts(логический) Если передать true, то число которое показывает количество записей в родительских категориях будет суммой своих записей и записей из дочерних категорий.
По умолчанию: false
Примеры
#1 Выпадающий список
Для того, чтобы создать выпадающий список из категорий мы можем воспользоваться другой специальной для этой цели, функцией wp_dropdown_categories() :
однако с таким подходом мы лишимся определенной гибкости в настройке списка, так как мы получи уже полностью сформированный список.
Поэтому, в некоторых случаях будет логичнее создать выпадающий список с помощью функции get_categories(). Вот пример (предполагается что нам нужно вывести подкатегории (дочерние) категории 10):
#2 Список категорий и их описание
Этот пример покажет нам как можно вывести списком ссылки на категории, где сразу после каждой ссылки будет идти описание категории (указывается при создании/редактировании категории):
Источник