Как добавить категории и теги страницам в WordPress с помощью плагинов и хаков
Как вы знаете, в системе Вордпресс существует 2 основные сущности: заметки (посты) и страницы сайта. Первая, как правило, используется при создании записей блога, вторая — для отображения статичной информации (контакты, об авторе и др.). Учитывая эти особенности, меню админки WP реализовано таким образом, что функции категорий и тегов в страницах WordPress полностью отсутствуют. Сегодня разберемся как исправить текущую ситуацию — есть парочка модулей по теме либо можно все реализовать через сниппеты.
Если подумать, то решение разработчиков CMS вполне логичное — данная фишка естественным образом смотрится только в записях блогов, а в остальных случаях, вроде как, и не требуется. Однако по работе возникают разные ситуации, в том числе и необходимость указывать теги и категории для страниц WordPress. Они могут пригодиться:
- при создания каталога статей (разбиения по рубрикам);
- как еще один способ навигации;
- чтобы скрыть статьи из выбранной категории;
- при реализации похожих страниц (выступают в качестве критериев схожести нескольких объектов);
- для краткой «характеристики» определенного контента (за счет меток).
Плагины для задания категорий и тегов страницам
Начнем с модулей, наиболее простого варианта. Важно понимать, что все эти решения просто активируют возможность присвоения всем публикациям определенных меток и разделов, они не выводят никакую информацию на самом сайте. Вам нужно будет дополнительно править шаблон и добавлять функции как и при оформлении записей в WordPress:
Разделы: <?php the_category(', '); ?>. Теги: <?php the_tags('', ', ', '.'); ?> |
В большинстве случаев код вставляется в page.php (или другой подходящий файл).
Post Tags and Categories for Pages
С этим модулем я знаком уже давно. Он обновлялся 10 месяцев назад и пропустил несколько последних знаковых релизов, тем не менее, при тестировании все было отлично. Не удивительно, что Post Tags and Categories for Pages имеет более 30тысяч скачиваний и почти максимальную оценку.
Процесс установки прост — находите плагин по названию среди других и активируете, настроек никаких нет. Сразу после этого в меню админки для раздела страниц появится 2 новых дополнительных пункта. Работать с ними можно точно также, как с записями.
На скриншоте видите, что расширение совместимо и с некоторыми другими, например, с Simple Tags. Также я успешно тестировал вывод тегов страниц в WordPress через the_tags в шаблоне и аналогичную фишку для категорий — the_category.
Единственный возможный минус — в своих «личных записях» нашел пометку о том, что данное решение глючит с исключениями (не могу вспомнить, что это значит): то ли речь идет о параметре exclude в WP функциях, то ли о плагинах похожих постов и Exclude categories … Как выход из ситуации, предлагается добавить метки, а после отключить модуль. Вдруг, информация кому-то пригодится.
Tag Pages
В отличии от предыдущего решения это позволяет работать исключительно с WordPress тегами. Если вам нужна только такая фишка, то есть смысл ставить плагин без поддержки категорий. Из плюсов: однозначно актуальность (обновка около месяца назад) + 20тысяч загрузок и хорошая оценка.
По функциям:
- появление специального блока ввода меток в WP при редактировании;
- с помощью фильтра pre_get_posts все ваши публикации будут корректно выводиться в архивах, RSS фидах;
- совместим с мультисайтовой установкой;
- не делает никакие правки в БД, только использует хуки.
Add Category to Pages
У модуля меньше всего загрузок — 10тысяч, но при этом максимальная оценка. Не смотря на название, он позволяет работать не только с категориями страниц WordPress но и тегами. Вы сможете просматривать архивы со списками публикаций по определенной теме. Единственное, что смущает — последний апдейт был 3 года назад. Хотя, по сути, применяемые здесь WP функции, за это время не изменились.
Хаки добавления тегов / категорий в страницы
В сети имеется несколько нужных нам сниппетов, в которых суть плюс-минус одинаковая, поэтому я выберу лишь один найден здесь (самый детальный). Хак следует разместить в файле function.php вручную либо используйте плагин Code Snippets. Весь код состоит из двух частей.
Сначала реализуем отображение блоков меток и категорий для страниц WordPress внутри админки:
function new_taxonomies_for_pages() { register_taxonomy_for_object_type( 'post_tag', 'page' ); register_taxonomy_for_object_type( 'category', 'page' ); } add_action( 'init', 'new_taxonomies_for_pages' ); |
Если вам надо активировать какую-то одну сущность — удалите лишнюю строчку, оставив только вариант с post_tag или category.
Вторая часть сниппета:
if ( ! is_admin() ) { add_action( 'pre_get_posts', 'tag_cat_archives' ); } function tag_cat_archives( $wp_query ) { $my_taxonomies_array = array('post','page'); if ( $wp_query->get( 'category_name' ) || $wp_query->get( 'cat' ) ) $wp_query->set( 'post_type', $my_taxonomies_array ); if ( $wp_query->get( 'tag' ) ) $wp_query->set( 'post_type', $my_taxonomies_array ); } |
Данный код нужен дабы система WordPress смогла выводить архивные списки рубрик/меток. Вы модифицируете запрос Wp_Query + используете хук pre_get_posts. При этом действия происходят только во фронтенде, т.к. мы указали условие !is_admin().
Еще в одном случае мне встречалась конструкция, где вместо задания сущностей ‘post‘,’page‘ для Wp_Query был параметр ‘any‘ (любые):
if ($wp_query->get('tag')) $wp_query->set('post_type', 'any'); |
Прием подойдет, когда у вас на сайте имеются и другие форматы объектов, которые хотелось бы выводить в архивах.
В целом, как видите, внедрить категории и теги в страницы Wordpress сайте не так и сложно. Выбирайте один из двух вариантов реализации: плагины проще, а хаки занимают меньше места. Если есть что дополнить по статье, пишите ниже.
комментария 4 к статье “Как добавить категории и теги страницам в WordPress с помощью плагинов и хаков”
Блог 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,93 из 7, голосов - 44)
- Умный копирайт в 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
По моему страницы на то и страницы, чтобы без тегов и меток всяких быть. Не вижу смысла в таком преобразовании.
Саша, в принципе, согласен, но мне вот нужно было сделать список похожих записей, и там без тегов страниц реализовать сложно.
Давно уже юзаю Post Tags and Categories for Pages пока никаких проблем с ним не замечал.
Спасибо за обзор. Плагин Tag Pages — то, что я искал! Он добавляет на страницах стандартное окошко «Метки» (как в записях).