Проверка, является ли запись "прилепленной" (IS_STICKY)
Функция is_sticky() — это условная функция в WordPress, которая проверяет, является ли текущая запись "прилепленной" (то есть, закрепленной на верхней части главной страницы).
Что такое "прилепленные" записи?
"Прилепленные" записи — это те записи, которые показываются на верхней части списка записей на главной странице сайта. Они предназначены для того, чтобы привлекать к себе внимание. Если запись "прилепленная", она будет отображаться на самом верху в течение определенного времени.
Полезные данные о функции
- Возвращаемое значение:
trueилиfalse. Функция возвращаетtrue, если запись "прилепленная", иfalseв противном случае.
Пример использования
Чтобы использовать is_sticky(), можно использовать следующий код:
Параметры
-
$post_id(int) — ID записи, которую вы хотите проверить на "прилепленность". Если вы не укажете этот параметр, будет проверяться текущая запись (та, на которой вы находитесь).По умолчанию: 0 — ID глобальной переменной
$post
Примеры
Простой пример
if( is_sticky() ){
// Эта запись "прилепленная".
}
if( is_sticky( 17 ) ){
// Это будет работать, если запись с ID 17 является "прилепленной".
}
Обнов��ения
- Версия: Функция была введена в версии 2.7.0 WordPress.
Исходный код функции
Вот как выглядит реализация функции is_sticky() в WordPress:
function is_sticky( $post_id = 0 ) {
$post_id = absint( $post_id );
if ( ! $post_id ) {
$post_id = get_the_ID(); // Если ID не указан, берем текущий ID записи.
}
$stickies = get_option( 'sticky_posts' ); // Получаем все "прилепленные" записи.
if ( is_array( $stickies ) ) {
$stickies = array_map( 'intval', $stickies ); // Преобразуем все ID в целые числа.
$is_sticky = in_array( $post_id, $stickies, true ); // Проверяем, есть ли текущий ID в списке "прилепленных".
} else {
$is_sticky = false; // Если нет "прилепленных" записей, возвращаем false.
}
/**
* Фильтрует, является ли запись "прилепленной".
*
* @since 5.3.0
*
* @param bool $is_sticky Является ли запись "прилепленной".
* @param int $post_id ID записи.
*/
return apply_filters( 'is_sticky', $is_sticky, $post_id ); // Возвращаем результат с помощью фильтра.
}
Заключение
Функция is_sticky() является полезным инструментом для создания динамичного контента на вашем сайте WordPress, позволяя выделять важные записи и привлекать к ним внимание. Теперь вы знаете, как использовать эту функцию, чтобы управлять отображением записей на вашей главной странице.