Как создавать пользовательские таксономии WordPress и управлять ими?

Опубликовано: 2022-09-15
Содержание скрыть
1. Что такое таксономия?
1.1. Плоская и иерархическая таксономия
2. Зачем вам нужны пользовательские таксономии WordPress?
3. Иерархия шаблонов таксономии
3.1. Иерархия категорий
3.2. Иерархия тегов
4. Как создавать собственные таксономии с помощью кода?
4.1. Создание нового плагина
4.2. Создание нового поста
4.3. Разрушение кода
5. Как создать пользовательские таксономии WordPress с помощью плагина?
5.1. Добавление таксономий для пользовательских сообщений
5.2. Добавление пользовательских таксономий в меню навигации
6. Модули — настраиваемые типы контента и поля
7. Как управлять пользовательскими таксономиями и массово редактировать их?
8. Заключение

Хотите лучше организовать свой контент в WordPress? Вам нужно создать пользовательские таксономии.

WordPress позволяет вам организовывать ваш контент с помощью категорий и тегов по умолчанию. Однако с пользовательскими таксономиями у вас есть возможность дальнейшей сортировки контента.

Но таксономии также сложны в настройке.

Итак, этот пост покажет вам, как создавать и использовать пользовательские таксономии WordPress.

Без дальнейших церемоний, давайте начнем с понимания таксономий.

Что такое таксономия?

Проще говоря, таксономия — это научное слово для классификации, используемое специально для организмов, чтобы классифицировать их по группам или типам.

Примером может служить классификация живых существ:

  • Растения
    • Деревья
      • Баньян
      • манго
    • Цветы
      • Лотос
      • Роза
  • Животные
    • Млекопитающие
      • Слоны
      • Львы
    • Рептилии
      • Змеи
      • Крокодилы

Плоская и иерархическая таксономия

Вы можете сделать таксономию плоской (только один уровень) или иерархической (много уровней).

Например, слоны включены в раздел «Млекопитающие», который сам включен в раздел «Животные», а животные — в раздел «Живые существа». Таким образом, любой предмет, помеченный знаком «Млекопитающие», одновременно принадлежит к этим трем иерархическим «категориям».

А если рассматривать все эти деревья по отдельности:

  • Баньян
  • манго
  • Сандаловое дерево

Это плоская таксономия, поскольку все они находятся на одном уровне.

Зачем вам нужны пользовательские таксономии WordPress?

Как и таксономия, таксономия WordPress — это способ организации контента, но здесь вы организуете группы сообщений и настраиваемые типы сообщений.

По умолчанию WordPress поставляется с двумя таксономиями, называемыми категориями и тегами .

Таким образом, хотя существует ряд встроенных элементов, WordPress позволяет разработчикам также создавать собственные элементы. Эта функция настройки также распространяется на типы сообщений и таксономии.

Однако, если вы используете настраиваемый тип публикации, категории и теги могут не подходить для всех типов контента. Чем больше контента, тем сложнее классифицировать их по категориям и тегам.

С помощью пользовательской таксономии вы можете создавать сложные структуры, которые делят ваш контент на разные разделы. Они также могут быть организованы иерархически, как в приведенном выше примере таксономии живых существ.

Например, вы можете создать собственный тип записи под названием «Фильмы» и отсортировать его, используя пользовательскую таксономию под названием «Жанр». Вы можете добавить жанры, такие как боевик, романтика, комедия, в соответствии с вашими потребностями. Это позволит вам и вашим читателям легко сортировать фильмы по жанрам.

Основное преимущество использования пользовательских таксономий заключается в том, что вы можете ссылаться на них независимо от категорий и тегов . Они даже получают свои подробные описания в админке WordPress.

В WordPress теги плоские, а категории иерархические. Другими словами, вы можете вкладывать категории друг в друга, в то время как теги просто находятся на одном уровне.

Иерархия шаблонов таксономии

WordPress отображает записи в порядке, определяемом иерархией шаблонов.

Шаблоны category.php , tag.php и taxonomy.php позволяют обрабатывать сообщения, отфильтрованные по таксономии, иначе, чем неотфильтрованные сообщения или сообщения, отфильтрованные по другой таксономии.

Примечание . Сообщение относится к любому типу сообщений — сообщениям, страницам, пользовательским типам сообщений и т. д. Эти файлы позволяют настраивать таргетинг на определенные таксономии или определенные термины таксономии. Например:

  • таксономия-{таксономия}-{термин}.php
  • таксономия-{таксономия}.php
  • тег-{slug}.php
  • тег-{id}.php
  • категория-{slug}.php
  • категория-{ID}.php

Так, например, вы можете отформатировать все сообщения в таксономии животных под названием новости на странице, которая выглядит иначе, чем сообщения, отфильтрованные в других категориях.

Шаблон archive.php обеспечивает наиболее общую форму управления, предоставляя макет для всех архивов; то есть страница, на которой отображается список сообщений.

Иерархия категорий

Для категорий WordPress ищет файл category-{slug}.php . Если он не существует, WordPress ищет файл для следующего иерархического уровня, category-{ID}.php и так далее. Если WordPress не может найти какие-либо специализированные шаблоны или файл шаблона archive.php, он возвращается к поведению по умолчанию, используя index.php.

Иерархия категорий представлена ​​ниже:

  • category-{slug}.php: например, если ярлык категории называется «новости», WordPress будет искать файл с именем category-news.php.
  • category-{ID}.php: Например, если идентификатор категории «6», WordPress будет искать файл с именем category-6.php.
  • категория.php
  • архив.php
  • index.php

Иерархия тегов

Для тегов WordPress ищет tag-{slug}.php . Если он не существует, WordPress ищет файл для следующего иерархического уровня, tag-{ID}.php и так далее. Если WordPress не сможет найти какие-либо специализированные шаблоны или файл шаблона archive.php, он вернется к поведению по умолчанию, используя index.php.

Иерархия тегов приведена ниже:

  • tag-{slug}.php: например, если слаг тега называется «sometag», WordPress будет искать файл с именем tag-sometag.php.
  • tag-{id}.php: например, если идентификатор тега равен «9», WordPress будет искать файл с именем tag-9.php.
  • тег.php
  • архив.php
  • index.php

Как создавать собственные таксономии с помощью кода?

Представьте, что эти пользовательские таксономии и интерфейс реализованы внутри плагина. Вы только что создали собственный плагин Fiction, который можно повторно использовать на любом веб-сайте WordPress.

Рассмотрим, например: Курсы таксономии.

В следующем примере показано, как создать плагин, который добавляет пользовательскую таксономию «Курсы» к типу записи по умолчанию.

Примечание . Код для добавления пользовательских таксономий не обязательно должен находиться в отдельном плагине. При желании его можно включить в тему или как часть существующего плагина.

Создание нового плагина

Зарегистрируйте таксономию «Курс» для типа сообщения «Сообщение», используя хук действия инициализации.

/*
* Название плагина: Таксономия курса
* Описание: Краткий пример, показывающий, как добавить таксономию под названием «Курс».
* Версия: 1.0
* Автор: developer.wordpress.org
* URI автора: https://codex.wordpress.org/User:Aternus
*/
 
функция wporg_register_taxonomy_course() {
     $метки = массив(
         'name' => _x('Курсы', 'общее название таксономии'),
         'singular_name' => _x('Курс', 'таксономия единственного числа'),
         'search_items' => __('Поиск курсов'),
         'all_items' => __('Все курсы'),
         'parent_item' => __('Родительский курс'),
         'parent_item_colon' => __('Родительский курс:'),
         'edit_item' => __('Редактировать курс'),
         'update_item' => __('Обновить курс'),
         'add_new_item' => __('Добавить новый курс'),
         'new_item_name' => __('Новое название курса'),
         'menu_name' => __('Курс'),
     );
     $аргументы = массив(
         'hierarchical' => true, // сделать его иерархическим (как категории)
         'метки' => $метки,
         'show_ui' => правда,
         'show_admin_column' => правда,
         'query_var' => правда,
         'переписать' => [ 'slug' => 'курс'],
     );
     register_taxonomy('курс', ['сообщение'], $args);
}
add_action('init', 'wporg_register_taxonomy_course');

Создание нового поста

Активируйте свой плагин. Перейдите в WordPress admin panel > Posts > Add New . Помимо категорий и тегов, вы должны увидеть новое мета-окно для таксономии «Курсы».

таксономия добавлена ​​в область поста

Разрушение кода

Следующее обсуждение разбивает код, использованный выше для описания функций и параметров.

Функция wporg_register_taxonomy_course содержит все шаги, необходимые для регистрации пользовательской таксономии.

Массив $labels содержит метки для пользовательской таксономии. Эти метки будут использоваться для отображения различной информации о таксономии в админке.

Массив $args содержит параметры конфигурации, которые будут использоваться при создании нашей пользовательской таксономии.

Функция register_taxonomy() создает новую таксономию с идентификатором курса для поста «Тип поста», используя для настройки массив $args.

Функция add_action() связывает выполнение функции wporg_register_taxonomy_course с хуком действия init.

$args : Массив $args содержит важную конфигурацию пользовательской таксономии, он указывает WordPress, как должна работать таксономия.

Как создать пользовательские таксономии WordPress с помощью плагина?

Если вы не занимаетесь разработкой и не хотите застревать в проблемах с кодированием, использование плагина — лучший вариант для вас.

Мы рассмотрим плагин Custom Post Type UI (1+ миллионов активных установок) для создания пользовательских таксономий WordPress. Загрузите, установите и активируйте плагин так же, как и любой плагин WordPress.

Предположим, что мы уже создали собственный тип сообщений под названием «События». Поэтому убедитесь, что у вас есть собственный тип записи, прежде чем вы начнете создавать свои таксономии.

Затем перейдите в WordPress admin panel > CPT UI > Add/Edit Taxonomies , чтобы создать свою первую таксономию.

создавать новые пользовательские таксономии WordPress

На этом экране вам нужно будет сделать следующее:

  • Создайте слаг для таксономии. Этот слаг используется в URL и в поисковых запросах WordPress. Он может содержать только буквы и цифры и автоматически преобразуется в строчные буквы.
  • Далее вы введете имена во множественном и единственном числе для своей пользовательской таксономии.
  • Оттуда у вас есть возможность щелкнуть ссылку «Заполнить дополнительные метки на основе выбранных меток». Если вы сделаете это, то плагин автоматически заполнит остальные поля метки за вас.

Теперь прокрутите вниз до раздела « Additional Labels ». В этой области вы можете предоставить описание вашей таксономии, пользовательское имя меню администратора для вашей таксономии и другие метки.

Эти метки используются на панели инструментов WordPress, когда вы редактируете и управляете контентом для этой конкретной пользовательской таксономии.

дополнительные метки таксономии

Далее у нас есть опция « Settings ». В этой области вы можете настроить различные атрибуты для каждой создаваемой вами таксономии. Каждая опция имеет описание с подробным описанием того, что она делает.

настройки таксономии

Здесь мы решили сделать эту таксономию иерархической . Это означает, что наша таксономия «Аудитория» может иметь подтемы. Например, предмет под названием «Студенты» может иметь такие подтемы, как колледж, университет и т. д.

Есть много других настроек внизу экрана на панели инструментов WordPress, которые вы можете выбрать.

Наконец, нажмите кнопку « Add Taxonomy » внизу, чтобы сохранить пользовательскую таксономию.

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

Добавление таксономий для пользовательских сообщений

Теперь, когда вы знаете, как создавать собственные таксономии, давайте рассмотрим их на примере.

Поскольку у нас есть настраиваемый тип сообщений под названием «События», это похоже на то, как вы создаете обычные сообщения в блоге.

Перейдите в WordPress admin panel > Events > Subjects , чтобы добавить термин или тему.

На этом экране напишите имя, слаг, родительский элемент для субъекта, если он есть, и описание.

Нажмите кнопку « Add New Subject », чтобы создать новую тему. Ваш недавно добавленный термин теперь появится в правом столбце.

добавить таксономии для типа записи

Теперь у вас есть новый термин, который вы можете использовать в своих сообщениях в блоге.

Вы также можете добавлять термины непосредственно при редактировании или написании контента для этого конкретного типа сообщений.

Добавление пользовательских таксономий в меню навигации

Вы также можете отобразить темы в меню навигации вашего веб-сайта.

Перейдите в WordPress admin panel > Appearance > Menus и выберите термины, которые вы хотите добавить, на вкладке пользовательской таксономии.

добавить таксономию в меню навигации

Не забудьте нажать кнопку « Save Menu », чтобы сохранить настройки. Теперь вы можете посетить свой веб-сайт, чтобы увидеть свое меню в действии.

Вот и все. Это не так сложно, как кажется. Для получения более подробной информации обратитесь к документации плагина.

Модули — настраиваемые типы контента и поля

Вы можете рассмотреть плагин Pods (более 100 000 активных установок) для создания пользовательских таксономий WordPress.

Плагин Pods предоставляет простой интерфейс, который позволяет создавать и редактировать собственные типы сообщений, таксономию, поля, а также расширять и настраивать типы контента.

Ключевые особенности :

  • Легко отображайте свой пользовательский контент, хотите ли вы использовать шорткоды, виджеты, шаблон Pods без кода.
  • Подойдите или используйте стандартный PHP в шаблонах и функциях темы WordPress.
  • Создавайте связи между любым вашим контентом, чтобы упростить организацию с помощью связанных полей.
  • Используйте типы полей плагина по умолчанию или создайте свои собственные.
  • Управление видимостью по ролям/возможностям
  • Все общие параметры полей, такие как дата и время, числа, текст, палитры цветов и многое другое.
  • Отлично работает с расширенными пользовательскими полями.

Как управлять пользовательскими таксономиями и массово редактировать их?

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

Так что, если бы вы могли управлять и редактировать все свои таксономии из одного места?

Редактируйте напрямую, назначайте таксономии сразу нескольким сообщениям, экспортируйте данные таксономии в CSV и многое другое…

Наш плагин Smart Manager позволит вам сделать то же самое. В настоящее время вы можете редактировать и управлять пользовательскими типами сообщений. Скоро мы запустим функцию для пользовательских таксономий!

Вывод

Фу! Это было много информации для обработки.

Надеюсь, теперь вы хорошо разбираетесь в пользовательских таксономиях WordPress и в том, как их настраивать.

По любым вопросам или предложениям, оставьте свои комментарии.