is_post_status_viewable()

Определяет, считается ли статус записи "просматриваемым"
Функция WordPress
INT 5.7.0
WordPress Icon
Содержание
  1. Описание функции
  2. Примеры использования
  3. Определение возможности просмотра статуса записи
  4. Проверка доступности статуса записи для просмотра
  5. Определение видимости статуса записи
  6. Проверка, можно ли просматривать статус записи
  7. Определение, является ли статус записи видимым
  8. Вопросы и ответы
  9. Как определить, является ли статус записи ‘viewable’?
  10. Как проверить, является ли определенный статус записи ‘viewable’?
  11. Какие статусы записей считаются ‘viewable’?
  12. Как изменить статус записи на ‘viewable’?
  13. Как проверить, является ли текущая запись ‘viewable’?
  14. Как проверить, является ли определенная запись ‘viewable’?
  15. Как определить, является ли статус записи ‘viewable’ для определенного пользователя?
  16. Как проверить, является ли определенный пользователь автором записи, которая считается ‘viewable’?
  17. Как проверить, является ли определенная запись ‘viewable’ на определенной странице?
  18. Связанные элементы

Описание функции

Функция is_post_status_viewable() определяет, должен ли статус записи считаться «видимым» или «просматриваемым».

Статус записи может быть определен как «видимый», если он позволяет просматривать запись на сайте. Например, статусы «опубликовано» и «черновик» считаются видимыми, тогда как статус «черновик с автосохранением» или «удалено» не считаются видимыми.

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

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

is_post_status_viewable( string|stdClass $post_status ): bool

Функция is_post_status_viewable() принимает один обязательный параметр — имя или объект статуса записи. Она возвращает логическое значение — true, если статус записи должен считаться видимым, и false в противном случае.

  • $post_status (string|stdClass) — Обязательный. Имя или объект статуса записи.

Функция возвращает логическое значение — true, если статус записи должен считаться видимым, и false в противном случае.

<?php
$post_status = 'publish'; // Задаем имя статуса записи
if ( is_post_status_viewable( $post_status ) ) { // Проверяем, является ли статус записи видимым
    echo 'Статус записи является видимым.';
} else {
    echo 'Статус записи не является видимым.';
}
?>

В данном примере мы задаем имя статуса записи «publish» и проверяем, является ли этот статус видимым с помощью функции is_post_status_viewable(). Если статус записи является видимым, то выводится сообщение «Статус записи является видимым.», в противном случае выводится сообщение «Статус записи не является видимым.»

Примеры использования

Определение возможности просмотра статуса записи


/**
 * Определение, может ли статус записи быть просмотрен.
 *
 * @param string|stdClass $post_status Название или объект статуса записи.
 * @return bool Возвращает true, если статус записи может быть просмотрен, иначе false.
 */
function is_post_status_viewable( $post_status ) {
    // Код функции
}

Проверка доступности статуса записи для просмотра


$post_status = 'publish';
if ( is_post_status_viewable( $post_status ) ) {
    echo 'Статус записи доступен для просмотра.';
} else {
    echo 'Статус записи недоступен для просмотра.';
}

Определение видимости статуса записи


/**
 * Определение, является ли статус записи видимым.
 *
 * @param string|stdClass $post_status Название или объект статуса записи.
 * @return bool Возвращает true, если статус записи является видимым, иначе false.
 */
function is_post_status_visible( $post_status ) {
    // Код функции
}

Проверка, можно ли просматривать статус записи


$post_status = 'private';
if ( is_post_status_viewable( $post_status ) ) {
    echo 'Статус записи можно просматривать.';
} else {
    echo 'Статус записи нельзя просматривать.';
}

Определение, является ли статус записи видимым


$post_status = 'draft';
if ( is_post_status_visible( $post_status ) ) {
    echo 'Статус записи является видимым.';
} else {
    echo 'Статус записи не является видимым.';
}

Вопросы и ответы

Как определить, является ли статус записи ‘viewable’?

Функция is_post_status_viewable() позволяет определить, является ли указанный статус записи «viewable» или нет.

Как проверить, является ли определенный статус записи ‘viewable’?

Для проверки, является ли определенный статус записи «viewable», необходимо вызвать функцию is_post_status_viewable() и передать ей имя или объект статуса записи.

Например, чтобы проверить, является ли статус «publish» «viewable», можно использовать следующий код:


if ( is_post_status_viewable( 'publish' ) ) {
    echo 'Статус "publish" является "viewable".';
} else {
    echo 'Статус "publish" не является "viewable".';
}

Какие статусы записей считаются ‘viewable’?

Статусы записей, которые считаются «viewable», определяются внутри WordPress и могут включать, например, «publish», «future», «draft» и другие.

Чтобы узнать, является ли определенный статус записи «viewable», можно воспользоваться функцией is_post_status_viewable().

Например, чтобы проверить, является ли статус «draft» «viewable», можно использовать следующий код:


if ( is_post_status_viewable( 'draft' ) ) {
    echo 'Статус "draft" является "viewable".';
} else {
    echo 'Статус "draft" не является "viewable".';
}

Как изменить статус записи на ‘viewable’?

Для изменения статуса записи на ‘viewable’ необходимо использовать функцию wp_transition_post_status(). Эта функция позволяет изменить статус записи и выполнить необходимые действия при этом изменении.

Пример кода:


function change_post_status_to_viewable( $post_id ) {
    $post = get_post( $post_id );
    
    if ( $post ) {
        $post->post_status = 'viewable';
        
        wp_transition_post_status( 'viewable', $post->post_status, $post );
    }
}

Как проверить, является ли текущая запись ‘viewable’?

Для проверки, является ли текущая запись ‘viewable’, можно использовать функцию is_post_status_viewable(). Она возвращает true, если статус записи равен ‘viewable’, и false в противном случае.

Пример кода:


if ( is_post_status_viewable( get_post_status() ) ) {
    echo 'Текущая запись является viewable.';
} else {
    echo 'Текущая запись не является viewable.';
}

Как проверить, является ли определенная запись ‘viewable’?

Для проверки, является ли определенная запись ‘viewable’, можно использовать функцию is_post_status_viewable(). Она принимает в качестве параметра имя или объект статуса записи и возвращает true, если статус записи равен ‘viewable’, и false в противном случае.

Пример кода:


$post_id = 123;
if ( is_post_status_viewable( get_post_status( $post_id ) ) ) {
    echo 'Запись с ID ' . $post_id . ' является viewable.';
} else {
    echo 'Запись с ID ' . $post_id . ' не является viewable.';
}

Как определить, является ли статус записи ‘viewable’ для определенного пользователя?

Для определения, является ли статус записи ‘viewable’ для определенного пользователя, можно использовать функцию is_post_status_viewable(). Эта функция принимает один обязательный параметр — имя или объект статуса записи.

Пример использования:


$post_status = 'publish';
$viewable = is_post_status_viewable($post_status);
if ($viewable) {
    echo 'Статус записи является viewable.';
} else {
    echo 'Статус записи не является viewable.';
}

Как проверить, является ли определенный пользователь автором записи, которая считается ‘viewable’?

Для проверки, является ли определенный пользователь автором записи, которая считается ‘viewable’, можно использовать функцию is_post_status_viewable() в сочетании с функцией get_current_user_id(), которая возвращает ID текущего пользователя.

Пример использования:


$post_status = 'publish';
$viewable = is_post_status_viewable($post_status);
if ($viewable) {
    $current_user_id = get_current_user_id();
    $post_author_id = get_the_author_meta('ID');
    if ($current_user_id == $post_author_id) {
        echo 'Вы являетесь автором записи, которая считается viewable.';
    } else {
        echo 'Вы не являетесь автором записи, которая считается viewable.';
    }
} else {
    echo 'Статус записи не является viewable.';
}

Как проверить, является ли определенная запись ‘viewable’ на определенной странице?

Для проверки, является ли определенная запись ‘viewable’ на определенной странице, можно использовать функцию is_post_status_viewable() в сочетании с функцией is_page(), которая проверяет, является ли текущая страница указанной страницей.

Пример использования:


$post_status = 'publish';
$viewable = is_post_status_viewable($post_status);
if ($viewable) {
    if (is_page('about')) {
        echo 'Запись считается viewable на странице "О нас".';
    } else {
        echo 'Запись считается viewable на другой странице.';
    }
} else {
    echo 'Статус записи не является viewable.';
}

Функция is_post_status_viewable() позволяет определить, является ли статус записи ‘viewable’. Она принимает имя или объект статуса записи в качестве параметра и возвращает булево значение, указывающее, должен ли статус записи считаться viewable. Эта функция полезна при разработке тем и плагинов WordPress, где требуется проверка доступности записей для просмотра определенным пользователям или на определенных страницах.

Связанные элементы

  • Функция get_post_status_object(): возвращает объект статуса записи по его имени.
  • Функция get_post_statuses(): возвращает массив всех зарегистрированных статусов записей.
  • Функция get_post(): возвращает объект записи по ее ID.
  • Функция get_post_status(): возвращает статус записи по ее ID.
  • Хук transition_post_status: вызывается при изменении статуса записи.
  • Класс WP_Post: представляет собой класс для работы с записями.
Обсуждение