Рубрика: Функции

Применяем рубрики, метки и произвольные таксономии к медиа файлам

Вас когда-либо огорчал тот факт, что WordPress не позволяет присваивать рубрики или метки к вашим изображениям и другим загруженным медиа файлам?

Представьте себе, насколько полезным шагом это было бы: вы могли бы создать динамические галереи изображений из отдельных расположений или отдельных типов (ландшафты, абстракции и т.д.), или вы могли бы создать страницы списков для сайтов с большим количеством PDF-вложений.

Прекрасные новости – присвоить рубрики и метки к медиа файлам можно, и достаточно просто. Вы можете присваивать рубрики и метки к вашим вложениям, добавив простой код к файлу functions.php вашей темы; также можете создавать произвольные таксономии, которые будут применяться к вложениям.

В данном руководстве я покажу вам, как это осуществить всего за 10 минут (или даже меньше).

Экран редактирования медиафайлов

В настоящий момент экран редактирования медиа файлов практически пуст, в нем нет никаких рубрик, меток или таксономий:

attachments1

По умолчанию вы не можете выбирать какие-либо существующие метки или рубрики – однако мы поправим это.

Применение рубрик к вложениям

На первом шаге мы подключим рубрики для вложений. Сделать это можно, воспользовавшись функцией register_taxonomy_for_object_type(). В свой файл functions.php темы добавьте следующий код:

Сохраните файл и обновите экран редактирования медиа файлов. Вы увидите, что теперь рубрики стали доступны:

attachments2

Также появился столбец с рубриками на экране редактирования медиа файлов:

attachments3

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

Применение меток к вложениям

Если вы предпочитаете работать с метками вместо рубрик (или, возможно, и с метками, и с рубриками), то в таком случае вы можете использовать ту же самую функцию. Добавьте следующий код в свой файл functions.php темы:

Как и в предыдущем примере, на экране редактирования медиа файлов появится новый раздел – на сей раз с метками:

attachments4

Также появится столбец с метками:

attachments5

Идем дальше – создание произвольной таксономии для вложений

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

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

Сделать это можно с помощью функции register_taxonomy(). Добавьте следующее в свой файл functions.php темы:

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

Если вы хотите применить ее к другим типам контента, то в таком случае вы должны заменить параметр attachment в функции register_taxonomy() на массив, содержащий слаги всех типов контента, которые вы хотите добавить. К примеру:

Экран редактирования медиа теперь выводит новую таксономию:

attachments6

Поскольку я включил в свой код аргумент show_admin_column, экран медиа библиотеки будет выглядеть так:

attachments7

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

Когда может пригодиться данная техника?

Как вы видели, рубрики и метки можно применять к медиа вложениям, таким как изображения, PDF-файлы, путем использования функции register_taxonomy_for_object_type(). Вы можете также создавать новую таксономию с помощью register_taxonomy() и применять ее к медиа вложениям.

  • Применение таксономий (включая рубрики и метки) к вложениям может использоваться на практике в следующих ситуациях:
  • Создание произвольного шаблона attachment.php для вывода прикрепленных изображений в стиле галерей, используя архивные страницы для вывода изображений из разных рубрик или мест.
  • Создание шаблонов для определенных таксономий или термов с целью вывода вложений по-разному на сайте – к примеру, используя таксономию location, вы можете создать шаблон taxonomy-location-uk.php для вывода архивов изображений из Великобритании, добавив к ним определенную стилизацию.
  • Категоризация PDF вложений на сайте с большим их количеством, а также использование архивных страниц для вывода файлов по теме, разделам, медиа типу и другим факторам, которые требуются вам в вашем проекте.
  • В шаблоне для текущей таксономии вы можете вывести ссылку на все прикрепления с запрошенным термом сразу под списком записей с указанным термом, дополненным прямыми ссылками на прикрепления – вы можете использовать два произвольных запроса в вашем шаблоне.

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

Источник: code.tutsplus.com


Связанные посты:


Метки: ,