Как на WordPress-сайте добавить категории и метки для Страниц?

Категории (рубрики) и метки (теги) помогают сортировать контент на сайте и облегчают пользователям поиск того, что они ищут. При создании записи WordPress обе таксономии могут оказаться очень полезными для организации всего контента.

Рубрики и теги в WordPress

В WordPress, по умолчанию, рубрики и метки могут быть присвоены исключительно Записям (Постам). Для статических страниц вообще понятие категоризации не предусмотрено. Это объясняется тем, что последние обычно не нуждаются в какой-либо структуре. Так, на Страницах размещают статичные данные (о сайте, о предоставляемых им услугах и пр.), которые обычно не будут изменяться вообще.

Как добавить категории и метки для Страниц?

Но все же если у Вас возникла необходимость в создании какой-либо структуры среди статических страниц Вашего сайта, то для этого существует несколько способов.

Способ 1. Плагин Post Tags and Categories for Pages

Плагин Post Tags and Categories for Pages добавляет для Страниц, как и в Записях, два вида таксономии: Рубрики и Теги. Особенностью дополнения является отсутствие каких-либо настроек для работы. Его достаточно установить и активировать. В итоге, если в админ-панели навести на пункт меню Страницы, то видим, что туда добавились еще два нужных нам пункта.

Админ-панель WordPress

Теперь, аналогично Записям, Вы, на странице редактирования Страницы, можете присваивать ей эти таксономии, создавая необходимую иерархию.

Способ 2. Добавление кода в файл functions.php

Если Вы по каким-либо причинам не желаете устанавливать на свой сайт дополнительный плагин, то можете воспользоваться этим способом. Второй способ добавления категорий и меток для Страниц предусматривает добавление специального PHP-кода в файл functions.php активной WordPress-темы на Вашем сайте.

Если Вы не знаете, как редактировать functions.php, то в этом случае Вам поможет плагин ProFunctions.

Итак, в самый конец указанного файла необходимо вставить следующие строки:

function wpschool_register_taxonomy() {
    register_taxonomy_for_object_type( 'post_tag', 'page' );
    register_taxonomy_for_object_type( 'category', 'page' );
}

function wpschool_display_taxonomy( $wp_query ) {
    // Добавление тегов
    if ( ( ( is_archive() || is_search() ) && $wp_query->get( 'tag' ) ) && ( ! $wp_query->get( 'post_type' ) ) ) {
    $wp_query->set( 'post_type', 'any' );
    } 
 
    // Добавление категорий
    if ( ( $wp_query->get( 'category_name' ) || $wp_query->get( 'cat' ) ) && ( ! $wp_query->get( 'post_type' ) ) ) {
    $wp_query->set( 'post_type', 'any' );
    }
}

add_action( 'pre_get_posts', 'wpschool_display_taxonomy' );
add_action( 'init', 'wpschool_register_taxonomy' );

Результат этого PHP-кода будет аналогичным работе вышеуказанного плагина.

Ещё читайте: Как добавить на сайт записи пользовательского типа с помощью register post type.

Нажмите, пожалуйста, на одну из кнопок, чтобы узнать понравилась статья или нет.

Если Вам понравилась статья — поделитесь с друзьями
Михаил Петров
Привет! Меня зовут Михаил Петров. Я копирайтер и занимаюсь этим с 2013 года. Скрупулезность и ответственность - моя фишка! Не могу делать как попало и добиваюсь, чтоб заказчик сказал минимум “неплохо”. За все время своей работы пришлось написать и отредактировать немало разной “текстовухи”, включая SEO-тексты, отзывы и прочую чушь. На сегодняшний день специализируюсь на написании информационных статей и руководств технического направления. Вижу смысл и светлое будущее в текстах для людей, а не для машин.
Задать вопрос