Таксономия (словари) WordPress может быть модифицирована под любые нужды проекта. Для этого CMS предоставляет мощное API, благодаря которому есть готовые решения. Т.е. плагины, позволяющие добавить нужные поля в базовые и кастомные словари, в том числе подключить миниатюры. Ниже рассмотрим некоторые из этих решений.
Если не хотите устанавливать плагины, предпочитая решать мелкие задачи своими силами: в API есть все для того, чтобы запрограммировать нужные поля. При этом есть два подхода к решению задачи.
Первый подход заключается в сохранении в базе URL картинки. Используется часть кода WP для выбора и вставки миниатюры картинки, также как и в публикациях. Пример реализации.
Второй подход заключается в сохранении в базе ID картинки. Он немного более сложный, но позволяет оперировать изображением полноценно. В зависимости от ситуации, мы сможем генерировать нужную миниатюру, иметь доступ ко всем метаданным картинки по ID. Пример реализации.
Плагины для подключения картинки в таксономию
Toolset Types
Мощный плагин, позволяет настраивать как типы публикаций, так и конструировать таксономию. Новичку, наверное, будет сложно быстро разобраться что к чему, но в итоге вы получаете конструктор, решающий все задачи по настойке и конфигурации полей сущностей сайта (публикаций и словарей) на WP.
Данные сохраняются в таблицы meta полей.
Возвращаясь к теме публикации :), я попробовал работать с полем «изображение».
Какие минусы обнаружились?
- В базу сохраняется не код выбранной в редакторе картинки из медиа библиотеки, а url её оригинала (т.н. перый подход).
- Не удалось сделать привязку набора полей к конкретному словарю. Поля появились во всех словарях сразу.
Category and Taxonomy Images
Этот плагин решает конкретно нашу задачу, т.е. добавляет поле выбора картинки в редактор терминов.
После включения в настройках появляется пункт — «Taxonomy image». Вам остаётся выбрать словари, куда будет добавлено поле селектора картинки.
Плагин реализует первый подход, который сохраняет URL изображения, выбранного из медиа-библиотеки. Данные сохраняются в общую таблицу options
сайта, что не очень хорошо, т.к. для метаданных таксономии есть специальная таблица. Для каждой связи создаётся отдельный уникальный ключ.
Taxonomy Images
Активация плагина добавляет в меню «настройки» пункт — «Taxonomy images». Выберите словари, в которые нужно добавить поле миниатюры. Эта часть очень похожа на предыдущее описание.
Плагин выводит миниатюры в список терминов в админке, а настройки сохраняет в общую таблицу options
. Причем все связи хранятся в одной переменной в виде массива. Важный момент в том, что сохраняется ID вложения, а не URL.
* * *
Два последних плагина давно не обновлялись, потому немного «отстали» от новшеств WP — а именно обновления API в части работы с meta полями таксономии. Из этих двух последних я бы отдал предпочтение второму — «Taxonomy Images».