Как добавить поддержку thumbnail в кастомный тип публикации

У базовых записей WP есть поддержка поля миниатюры, т.н. прикрепленное изображение. Рассмотрим как добавить поле миниатюры в редактор произвольного типа публикации (custom post type). А в конце статьи — пример вставки миниатюры в шаблон вашей публикации.

Регистрация

Всё начинается с регистрации типа публикации, а именно функции register_post_type. Её следует вызывать на этапе инициализации модуля/темы. Довольно часто её прикрепляют как вызов hook: init.

Пример кода:

В примере мы объявляем новый тип публикации — my-post-type. У него может быть множество свойств, которые описаны в документации, но в контексте нашей проблемы, нас интересует лишь свойство support — и передаваемое значение ‘thumbnail‘.

К сожалению, этого не достаточно чтобы WP понял наши намерения по поводу миниатюры в объявленном типе публикации. Чтобы завершить начатое, нужно добавить поддержку фичи в теме.

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

Вывод в шаблон

Прикрепленное изображение — это всего лишь связка с media библиотекой вашего сайта. Статья получает дополнительное мета поле (с ключом — _thumbnail_id), где сохраняется идентификатор media объекта.

Сначала мы извлекаем этот ID (imageID), собираем дополнительные мета-данные о картинке, а затем формируем шаблон тега IMG. Пример кода в контексте шаблона вашей публикации:

Тег IMG формируется функцией the_post_thumbnail, которая позволяет передать атрибуты картинки и выбрать тип миниатюры. В данном примере используется встроенный тип — large.

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

Возможно, вы сами захотите собрать тег IMG, тогда вам понадобится функция для построения URL картинки:

Она требует тип миниатюры, в примере я снова взял встроенный тип — large.

Написать комментарий

Мало букафф? Читайте есчо !

Добавляем админа wordpress, имея доступ к базе данных

Октябрь 20, 2016 г.

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

Читать

Добавляем типы публикаций в Wordpress

Апрель 16, 2016 г.

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

Читать

 

Комментарии к «Как добавить поддержку thumbnail в кастомный тип публикации»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: