Как добавить поддержку 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.

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

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

Как добавить в contact form 7 плейсхолдер элемента

Апрель 1, 2023 г.

Неудобно, что прямо в редакторе нельзя задать нужные атрибуты, приходится искать либо в коде, чтобы подсмотреть как это реализовано, или на форумах. Нужно было создать элементы формы с атрибутом placeholder. Оказалось, что wpcf7 понимает следующую ...

Читать

Добавить favicon в шаблон на WP

Февраль 25, 2023 г.

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

Читать

 

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

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



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