Иван Иванов: Пример записи

О таксономиях

Слово «Taxonomy» пришло к нам, как всегда, из греческого: taxis — расположение, nomos — закон, принцип. Т.е. Таксономия — это принцип расположения чего-либо. Для WordPress — это принцип расположения записей.

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

Структура контента в WordPress очень простая: контент состоит из записей и таксономии, которые связывают эти записи — по сути, это все! К контенту также относятся комментарии и файлы, но и то и другое является частью записи… Есть еще пользователи, но это как бы и не контент, а отдельная сущность. Вот и получается, что таксономии связывают только записи.

Стоит обратить внимание, что в WordPress «Таксономия» — это только название, т.е. таксономии как таковой не существует — есть только запись о её существовании. А что-то реальное в таксономии — это её элементы. Например, возьмем таксономию «Рубрики» (category) — это только название — запись в переменной PHP, а реальные данные таксономии — это созданные рубрики — её элементы. Например, если не создавать ни одной рубрики, то условно можно сказать, что таксономии нет (она пуста) — в базе данных она нигде не записана, а существует лишь в переменных PHP, где указано название таксономии и её свойства (опции), причем создается такая переменная налету во время генерации страницы. Записи привязываются именно к элементам таксономии, а не к самой таксономии. Так как записи связаны не с таксономией, а с её элементам, то и вся последующая работа с таксономией — это работа с её элементами.

Элементы таксономии называются terms. Для кратности так и будем их называть — термины.

Типы таксономий

Выше я говорил, что при создании таксономии ей задаются свойства. Одно из самых важных свойств — это тип таксономии. Так, таксономии делятся на два типа:

  1. Древовидные — например рубрики
  2. Линейные (плоские) — например метки

Отличия. Элементы древовидных такс. могут быть родительскими и дочерними, т.е. одни элементы как бы вложены в другие. А элементы плоских такс. всегда сами по себе, т.е. все они находятся на одном уровне, а значит не зависят друг от друга.

Схематически это выглядит как-то так:

Схематическое изображение типов таксономий в wordpress. Базовые таксономии WordPress

По умолчанию в WordPress существует пять таксономии:

  • category — рубрики
  • post_tag — метки
  • post_format — скрытая таксономия. Термины этой таксономии — это форматы записей.
  • nav_menu — скрытая таксономия. Термины этой таксономии — это созданные меню навигации, к ним прикрепляются записи (ссылки меню). Если в меню создается произвольная ссылка, то её данные помещаются в таблицу записей (wp_posts) с типом записи nav_menu_item, а запись прикрепляется к термину. Все опции ссылки (URL, анкор и т.д.) хранятся в метаполях записи. Тоже самое происходит, если в эту таксономию помещается элемент другой таксономии, например рубрика — также создается запись в таблице записей, а данные помещаются в метаполя записи. Система топорная и не очень практичная, зато независимая, хорошо расширяемая, а главное простая — в стиле WordPress.
  • link_category — разделы для ссылок, которые отключены в последних версиях.

Добавить комментарий