Рубрики и категории wordpress, функция wp_list_categories
Для каждого поста и записи wordpress пользователь может задавать одну или несколько рубрик (категорий). Эта возможность позволяет сгруппировать близкие по смыслу записи и предоставить возможность посетителям читать и просматривать только те рубрики, которые им нравятся. Например, когда я создавай свой основной блог Tod’s Blog, то собирался писать обо всех нюансах интернета — начиная с дизайна и заканчивая программированием. Допустим, человек пришел из поисковика на статью про wordpress и захотел бы почитать про систему еще больше – ему пришлось бы рыться в архивах, повторно использовать поиск либо просматривать все посты подряд. Разумеется, этого всего можно было избежать, зайдя в специальную категорию под названием wordpress. Или, например, для те, кто увлекается лишь дизайном, могла быть интересна рубрика wordpress темы для блога.
Если внимательно посмотрите на шапку блога, то можете увидеть своего рода меню, где рубрики wordpress выступают в роли разделов проекта. Как по мне, это достаточно удобный и наглядный способ разделения тематики записей.
Для управления категориями wordpress существует несколько механизмов. Во-первых, создание и редактирование всех категорий производится в разделе «Записи» пункт «Рубрики».
В самом центре страницы вы увидите форму для добавления новой категории. Здесь нужно указать ее название (имя), ярлык (часть ссылки url для чпу), родительскую категорию (если такая есть), а также можно задать краткое описание. Родительская категорий позволяет создавать в wordpress разделы с несколькими уровнями вложенности – например, для категории «водрпресс» на каком-то ИТ блоге можно добавить те же шаблоны, плагины и т.п.
Справа на странице Рубрики отображаются все категории wordpress, с возможностью из редактирования либо удаления. Чтобы произвести действия достаточно подвести курсор мышки на имя той или иной категории, после чего увидите небольшое всплывающее меню.
При редактировании записи wordpress вы увидите в одном из информационных блоков тот, где можно будет выбрать одну или несколько категорий для статьи. Просто поставьте галочки напротив нужных имен.
Здесь же можно добавлять новые рубрики – кликнув по соответствующей ссылке. Единственный недостаток этого механизма в том, что при создании можно указать лишь имя и родительскую категорию, тогда для как задания поля ярлык придется переходить в раздел «Рубрики» и редактировать информацию там.
Кроме того редактировать категории для постов в блоге можно через их список в меню Записи – Изменить. Там при наведении на ту или иную публикацию вы увидите ссылку «Быстрое редактирование». Нажимаем по ней и видим форму для правки:
Здесь можно изменить и категории, и теги, и всю дополнительную информацию по статье. Вещь очень удобная + работает без перезагрузки страницы.
Функция wp_list_categories для категории wordpress
По традиции рассматриваю не только вопрос работы с теми или иными элементами системы, но и привожу специальные функции для шаблонов. Точно также как я рассказывал про wordpress страницы. Итак, для вывода списка категорий со ссылками на них используется wp_list_categories. Она имеет целый ряд аргументов:
- show_option_all – отображает ссылка на все категории, если в качестве стиля отображения выбрал список.
- orderby – сортировка для категорий по ID, имени (name), ярлыку (slug), количеству постов (count).
- order – порядок сортировки (ASC – по увеличению, DESC – по уменьшению).
- show_last_updated – показывать дату последнего обновления.
- style – стиль оформления: список (list), разделение через <br> (none).
- show_count – отображать количество постов в категории.
- hide_empty – скрывать пустые рубрики, где нет записей.
- use_desc_for_title – использовать описание для атрибута title в ссылке.
- child_of – вывод только категорий для заданной родительской рубрики.
- feed – отображение ссылку на wordpress rss фид для категорий.
- feed_type – тип фида.
- feed_image – картинка для значка rss.
- exclude – исключение категорий из списка, при этом параметр child_of автоматически отключается.
- exclude_tree – исключения целой ветки рубрик.
- include – обратный параметр, который включает только указанные категории wordpress в список.
- hierarchical – параметр для отображения подкатегорий.
- title_li – заголовок списка рубрик.
- number – количество категорий для отображения (если их слишком много).
- echo – выводит рубрики, по умолчанию равен True.
- depth – указывает количество уровней для подкатегорий для вывода.
Напоследок приведу ряд примеров использования wp_list_categories. Во-первых, вариант из шапки этого блога.
<?php wp_list_categories('hide_empty=1&exclude=1&title_li=&orderby=count&order=desc&use_desc_for_title=0'); ?> |
Здесь задано отображение скрытых категорий, исключение из списка рубрики с, пустая строка для заголовка блока, сортировка по количеству статей и по уменьшению (то есть больше всего статей у меня в разделе функции wordpress). Последний аргумент не подставляет описание категории в title для ссылки.
Ну и еще парочку простых ситуаций. Использование исключений и включений категорий.
<ul><?php wp_list_categories('orderby=name&include=3,5,9,16'); ?></ul> <ul><?php wp_list_categories('orderby=name&show_count=1&exclude=10'); ?></ul> |
Отображения только подрубрик выбранной категории
<ul> <?php wp_list_categories('orderby=id&show_count=1&use_desc_for_title=0&child_of=8'); ?> </ul> |
Показ категорий с RSS ссылками
<ul> <?php wp_list_categories('orderby=name&show_count=1&feed=RSS'); ?> </ul> |
Можно использовать картинку для фидов rss
<ul> <?php wp_list_categories('orderby=name&show_count=1&feed_image=/images/rss.gif'); ?> </ul> |
Если есть что дополнить про рубрики и категории wordpress, пишем в комментариях.
Update: Также вам может пригодится небольшой хак чтобы убрать ненужный текст из атрибута title для ссылок категорий. В wordpress по умолчанию определяется текст title что-то вроде «просмотреть все записи в рубрике ….», можно вместо этого просто оставить название рубрики — читаем статью по ссылке выше.
комментариев 319 к статье “Рубрики и категории wordpress, функция wp_list_categories”
Блог Wordpress Inside поможет вам научиться работать в вордпресс, закрепить и расширить имеющиеся знания. Плагины и шаблоны, разные хаки и функции wp, оптимизация и безопасность системы – все это и намного больше вы сможете найти на страницах нашего проекта!
Если хотите быстро и оперативно получать последние новости и статьи, то рекомендуем подписаться на обновления блога:
- Як сховати відсутні товари в Woocommerce шорткодах та схожих товарах
- Сервіс AdMaven + плагін для монетизації трафіка на WordPress сайтах
- Плагіни для створення стрічки новин з біжучим рядком в WordPress
- Як змінити розміщення кнопки оформлення замовлення в WooCommerce
- Плагін WHWS Display In Stock Products First – відображення товарів в наявності першими
- Підписка MonsterONE: чи варто використовувати цей сервіс у 2023 році? (+5 продуктів, які треба скачати в першу чергу)
- Онлайн генератор ссылок на мессенджеры для WordPress и не только
- WooCommerce (46)
- Безопасность (12)
- Видео (6)
- Виджеты (28)
- Возможности (141)
- Вопрос-ответ (6)
- Начинающим (52)
- Новости (46)
- Оптимизация (23)
- Плагины (246)
- Сервисы (87)
- Хаки и секреты (87)
- Шаблоны (45)
- Записи и посты wordpress, оформление записи (5,91 из 7, голосов - 47)
- Проблема с адаптивными изображениями в Gutenberg редакторе WordPress (3,86 из 7, голосов - 49)
- Умный копирайт в footer.php для wordpress (5,63 из 7, голосов - 30)
- Обновление плагинов и тем в WordPress: автоматическое, через FTP, скрытие уведомлений (5,19 из 7, голосов - 31)
- Polylang — плагин для мультиязычных сайтов на нескольких языках в WordPress (4,42 из 7, голосов - 31)
- Плагин TinyMCE Advanced – wordpress текстовый редактор (6,35 из 7, голосов - 20)
- Рубрики и категории wordpress, функция wp_list_categories (6,05 из 7, голосов - 20)
- Дизайн Мания - о веб-дизайне и не только.
- Tod's Blog - все про заработок онлайн.
- Вебдванольные заметки - обзоры веб-сервисов.
- Советы по выбору холодильника LG с технологией No Frost
- Зачем нужны Wi-Fi ретрансляторы и как выбрать подходящую модель
- Введение в онлайн-казино Slotor777: многообразие игр и привлекательные бонусы
- Необходимость использования облачного хранилища в наше время, что важно и как выгодно?
- Спрощення процесу звітності за допомогою програми BAS Бухгалтерія
- Технологія підключення інтернету GPON та її переваги
- За що гравці найбільше цінують Lineage 2
- Для каких проектов нужна аренда виртуального сервера и что такое VPS
Категории и рубрики ре группируются и все записи в них просто идут все подряд. Хотя в Вордпрессе они до сих пор категоризированы.
Виталий, определенно это какой-то глюк, вызвать его могли либо «кривой» шаблон либо какой-то из плагинов — нужно искать.
Владимир, на ум приходит 3 варианта — это какой-то хитрый плагин, это специфика темы — в таком случае посмотрите файл functions.php и тот где собственно выводится текст. Возможно также это задано через таблицу стилей CSS — опять же узнать какой стиль для данного участка текста используется и посмотреть в style.css как он оформлен.
Здравствуйте. У меня с этой функцией возникла проблема. В sidebar.php пишу: Однако ненужная категория всё равно висит в списке. Не знаете, с чем это может быть связано?
Здравствуйте, подскажите пожалуйста, как изменить ссылку какой-либо категории, например ссылка категории в главном меню buy.armagemusic.com/category/exclusive-music-auction/ изменить ее на адрес статичной страницы buy.armagemusic.com/exclusive-music-auction это нужно из-за особенностей темы?
Armen, на ум приходит две статьи, которые могли бы вам помочь — Как удалить category из ссылок категорий блога и Плагин No category parents – убираем родительские категории. Единственное, что нужно тестировать насколько они сейчас работоспособный с новой версией системы, за это ручаться не могу, надо проверять.
Вопрос такой. При открытии рубрики, он выводит список записей в виде собственно списка. Подскажите где править чтобы выводил то что мне хотелось бы видеть, в частности это название записи и привьюшка.
Алекс, стиль отображения страницы категории может задаваться в category.php или index.php в зависимости о шаблона — начинать искать нужно там. Как добавить превью? — пост про миниатюры должен помочь. Но вообще, конечно, в этом всем нужно разобраться дабы понимать что куда добавлять.
Спасибо. наверное надо смотреть файл категори пхп, как раз этот ответ ждал.
Добрый день! Подскажите пожалуйста, какой плагин применить для раздела «Рубрики», чтобы архивы статей отображались с фотографиями к статье.? И где его можно скачать? Спасибо.
Владимир, это не в плагине делается, а в файлах шаблона — category.php или index.php. Нужно подключить миниатюры так как описано в этой статье.
Добрый день! Подскажите пожалуйста в чем может быть проблема:
Архивы статей отображаются с картинками и так как надо после подключения миниатюр (огромное спасибо за статью). Только миниатюры не хотят вставать друг под другом. Похоже, что для нижней миниатюры нет места., т.е в списке постов картинка то слева, то справа, хотя в настройках миниатюры все должно быть по левому краю. Подскажите пожалуйста где порыться для решения.
Спасибо
Ольга, скорее всего проблема со стилями, их можно подправить в style.css. Однозначно не могу ответить на вопрос, но это все, скорее всего, из-за выравнивания по левому краю остальные элементы съехали также. Обычно после каждого выводимого блока поста (картинка + текст) ставится Div с классом clear и ему прописывается в css.
А как можно вывести список рубрик в горизонтальное меню?
Чтобы каждой рубрике соответствовал свой пункт.
remview, сделать горизонтальном меню из рубрик можно с помощью СSS стилей. По HTML коду оно ничем от вертикального не отличается.
Подскажите, пожалуйста, как отсортировать рубрики по своему желанию, по принципу работы плагина «my-category-order»? Дело в том, что этот плагин перестал работать начиная с 3-й версии вордпресса :(
Может есть альтернативное решение?
Kseniya, можно попробовать сделать через вордпресс меню.
Спасибо огромное! Прочитала вашу статью, которую рекомендуете. Всё понятно описано, поэтому думаю, что сама справлюсь с этой задачей.
День добрый, Александр!
Если возможно — подскажите, пожалуйста. Есть сайт, с темой от руки левого человека. PHP файлов для категорий нет, index.php гол как сокол. Да и я не программер, но двигаюсь. Создал рубрику «Кондиционеры», в ней подрубрики, но сама рубрика пустая, нужно, что бы один урл был у этой рубрики и статической страницы(которая есть в главном меню-пункт»Кондиционирование»). Перерыл всю консоль и не нашел. Вот как сделать. что бы по этим двум кнопкам юзеру вываливался один урл.
Заранее благодарен.
З.Ы. прошу прощения за просьбы на мыло.(сроки жмут)
inspektorveb, Один урл у категории и страницы быть не может, насколько я знаю.
Вы можете создать отдельный шаблон для категории category-ID.php — это будет шаблон не для всех категорий, а только для нужной. В этот шаблон заливаете все из индекс.пхп или архивс.пхп если есть отдельный шаблон для архивов. А потом добавляете статический текст какой нужно чтобы страница категории по наполнению была похожа на страницу.
Вот как то боялся я этого.
Спасибо!
Хм…тогда запрет на индексацию дубля
Здравствуйте. Подскажите где, в каком файле могут находиться рубрики на сайте test-design.ru? Мне нужно поставить последней рубрику «Добавить страницу». Я понимаю что нужно просто физически вырезать код этой рубрики и вставить его последним, но никак не найду где же коды рубрик, в каком файле…
Сегрей, это могут быть виджеты или файл сайдбара sidebar.php, но вообще каждый шаблон индивидуален, поэтому всякие ситуации могут быть.
Здравствуйте. У меня такой вот вопрос. Как можно добавить 100 подрубрик в одну рубрику сразу списком? Я начал писать блог с кулинарными рецептами, и конечно у меня есть тысячи ингредиентов. Например я создал рубрику под названием А, и хочу вывести в ней все ингредиенты начинающиеся на букву А. Может плагин есть какой? Заранее благодарю за ответ !
Мусорини, с таким не сталкивался, можно поискать плагин массового редактировать рубрик, хотя не уверен, что такой есть.
Здравствуйте! Скажите, пожалуйста, можно ли как то отключить вывод статей в родительской рубрике, чтобы статья выводилась только в заданной рубрике?
Заранее благодарна за ответ.
С уважением.
Екатерина, с таким не сталкивался, думаю есть какие-то хаки или плагины, но задача нетривиальная. Самый просто метод — не создавать родительские рубрики вообще, а в формировать иерархию через инструмент «Внешний вид» — «Меню». В таком случае технически рубрики будут без наследования, а визуально для всех посетителей — с подпунктами.
Подскажите, как сделать, чтобы название рубрик не отображалось над записями?
Вадим, если я правильно понял вопрос, то нужно зайти в файл шаблона записей single.php, найти там функцию, отображающую категории. Про нее можно почитать в статье вывод категорий для поста.
Добрый день. Подскажите и мне, пожалуйста. У меня статьи в рубрике выводятся анонсами с миниатюрой и определенным кол-вом текста. Где и что подправить, чтобы я могла регулировать кол-во текста? Тег more не ставлю, объем текста определяет сам шаблон или вордпресс.
Я хочу, чтобы первая статья в рубрике отображалась полностью, а после не уже шли анонсы.
спасибо!