post_type_supports()WP 3.0.0

Проверяет поддерживает ли тип записи указанную возможность (метабокс): title, editor, author, thumbnail...

Функция используется, чтобы выяснить, доступна ли для конкретного post_type (например, 'post' или 'page') возможность, такая как редактор, миниатюра, комментарии и другие.

Для получения данных, используется глобальная переменная $_wp_post_type_features

Основа для: use_block_editor_for_post_type()
1 раз — 0.000018 сек (очень быстро) | 50000 раз — 0.04 сек (скорость света)

Хуков нет.

Возвращает

true|false.

  • true - тип записи поддерживает указанную возможность
  • false - возможность не поддерживается или указана несуществующая возможность.

Использование

post_type_supports( $post_type, $feature );
$post_type(строка) (обязательный)
Название типа поста, который нужно проверить.
$feature(строка) (обязательный)

Название возможности которую нужно проверить. Возможность регистрируется в параметре supports функции register_post_type(). Может быть:

  • title - блок заголовка;
  • editor - блок для ввода контента;
  • author - блог выбора автора;
  • thumbnail блок выбора миниатюры записи. Требует поддержки из темы - add_theme_support('post-thumbnails').
  • excerpt - блок ввода цитаты;
  • trackbacks - блок уведомлений;
  • custom-fields - блок установки произвольных полей;
  • comments - блок комментариев;
  • revisions - блок ревизий (не отображается пока нет ревизий);
  • page-attributes - блок атрибутов постоянных страниц (шаблон и древовидная связь записей, древовидность должна быть включена). Может быть использовано вместо.
  • post-formats – блок форматов записи, если они включены в теме.
  • attachment:audio – специальные для вложений.
  • attachment:video – специальные для вложений.

Примеры

0

#1 Проверим предусмотрен ли метабокс thumbnail для типа поста page

if( post_type_supports( 'page', 'thumbnail' ) ){
	echo 'На странице редактирования записи типа "page" есть метабокс "thumbnail".';
}
0

#2 Совместимость с вложениями (аудио/видео)

Для вложений типа audio/video можно проверить поддержку миниатюр:

if ( post_type_supports( 'attachment:audio', 'thumbnail' ) ) {
	// Обработка миниатюр для аудио-вложений
}

Заметки

  • Global. Массив. $_wp_post_type_features

Список изменений

С версии 3.0.0 Введена.

Код post_type_supports() WP 6.8.3

function post_type_supports( $post_type, $feature ) {
	global $_wp_post_type_features;

	return ( isset( $_wp_post_type_features[ $post_type ][ $feature ] ) );
}