get_post_format()
Получает формат текущего или указанного поста: quote, video, audio.
Функция определяет, к какому из предустановленных форматов (aside, gallery, link, image, quote, status, video, audio) принадлежит запись. Если формат не задан (то есть используется "стандартный"), функция вернёт false.
Используется внутри Цикла WordPress.
В некоторых случаях, вам может пригодится установить обычному посту формат standard, сделать это можно так:
$format = get_post_format() ?: 'standard';
Формат записи хранится в таксономии post_format. Функция возвращает слаг термина без префикса post-format-.
Форматы записей - это дополнительная функциональность WordPress, которая включается отдельно через add_theme_support('post-formats').
Подробнее про форматы записей.
Хуков нет.
Возвращает
Строку|false.
Строку— формат: 'aside', 'gallery' и т.д.false— у поста не указан никакой формат.
Использование
$format = get_post_format( $post_id );
- $post_id(число)
- ID поста, формат которого нужно получить.
По умолчанию: текущий пост в цикле
Примеры
#1 Пример, который показывает как выводить разный контент для записей с различными форматами
Убедитесь, что в теме существует файл для формата по умолчанию: format.php и файлы для остальных форматов соответственно: format-link.php, format-aside.php и т.д.
Этот код нужно использовать внутри цикла WordPress:
$format = get_post_format(); get_template_part( 'format', $format );
Список изменений
| С версии 3.1.0 | Введена. |
Код get_post_format() get post format WP 6.8.3
function get_post_format( $post = null ) {
$post = get_post( $post );
if ( ! $post ) {
return false;
}
if ( ! post_type_supports( $post->post_type, 'post-formats' ) ) {
return false;
}
$_format = get_the_terms( $post->ID, 'post_format' );
if ( empty( $_format ) ) {
return false;
}
$format = reset( $_format );
return str_replace( 'post-format-', '', $format->slug );
}