is_post_publicly_viewable()

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

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

Функция is_post_publicly_viewable() определяет, является ли запись общедоступной для просмотра. Она проверяет, установлен ли у записи статус публикации «publish» и нет ли у нее даты публикации в будущем. Если запись удовлетворяет этим условиям, функция возвращает значение true, в противном случае — false.

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

is_post_publicly_viewable( int|WP_Post|null $post = null ): bool

Функция принимает один необязательный параметр:

  • $post (int|WP_Post|null) — необязательный. Идентификатор записи или объект записи. По умолчанию используется глобальная переменная $post.

Функция возвращает значение booltrue, если запись общедоступна для просмотра, и false, если нет.

<?php
$post_id = 123; // идентификатор записи
$post = get_post( $post_id ); // получаем объект записи по идентификатору
if ( is_post_publicly_viewable( $post ) ) { // проверяем, является ли запись общедоступной
    echo 'Запись доступна для просмотра';
} else {
    echo 'Запись не доступна для просмотра';
}
?>

В данном примере мы получаем объект записи по ее идентификатору с помощью функции get_post(). Затем мы проверяем, является ли эта запись общедоступной с помощью функции is_post_publicly_viewable(). Если запись является общедоступной, выводится сообщение «Запись доступна для просмотра», в противном случае — «Запись не доступна для просмотра».

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

Определение доступности публичного просмотра поста


/**
 * Определяет, является ли пост публично видимым.
 *
 * @param int|WP_Post|null $post Optional Post ID or post object. Defaults to global $post.
 * @return bool Whether the post is publicly viewable.
 */
function is_post_publicly_viewable( $post = null ) {
    // Реализация функции
}

Проверка публичного просмотра поста


$post_id = 123;
if ( is_post_publicly_viewable( $post_id ) ) {
    echo 'Пост публично видимый.';
} else {
    echo 'Пост не публично видимый.';
}

Установка доступности публичного просмотра поста


$post_id = 123;
// Получаем объект поста
$post = get_post( $post_id );
// Устанавливаем доступность публичного просмотра
$post->post_status = 'public';
// Сохраняем изменения
wp_update_post( $post );
echo 'Доступность публичного просмотра поста установлена.';

Получение статуса публичного просмотра поста


$post_id = 123;
// Получаем объект поста
$post = get_post( $post_id );
// Получаем статус публичного просмотра
$status = $post->post_status;
echo 'Статус публичного просмотра поста: ' . $status;

Определение видимости поста для публичного просмотра


$post_id = 123;
// Получаем объект поста
$post = get_post( $post_id );
// Проверяем, является ли пост публично видимым
if ( $post->post_status === 'public' ) {
    echo 'Пост публично видимый.';
} else {
    echo 'Пост не публично видимый.';
}

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

Как определить, является ли запись публично видимой?

Функция is_post_publicly_viewable() позволяет определить, является ли заданная запись публично видимой.

Для этого необходимо передать в функцию идентификатор записи или объект записи.

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


$post_id = 123;
$is_publicly_viewable = is_post_publicly_viewable($post_id);
if ($is_publicly_viewable) {
    echo 'Запись публично видима.';
} else {
    echo 'Запись не публично видима.';
}

Как проверить, что запись не является публично видимой?

Для проверки, что заданная запись не является публично видимой, можно использовать функцию !is_post_publicly_viewable().

Она возвращает логическое значение true, если запись не публично видима, и false в противном случае.


$post_id = 123;
$is_not_publicly_viewable = !is_post_publicly_viewable($post_id);
if ($is_not_publicly_viewable) {
    echo 'Запись не публично видима.';
} else {
    echo 'Запись публично видима.';
}

Как использовать функцию is_post_publicly_viewable() для проверки видимости записи?

Для проверки видимости записи можно использовать функцию is_post_publicly_viewable() в условном операторе.

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


if (is_post_publicly_viewable()) {
    echo 'Текущая запись публично видима.';
} else {
    echo 'Текущая запись не публично видима.';
}

Также можно проверить видимость конкретной записи, передав ее идентификатор или объект в функцию:


$post_id = 123;
if (is_post_publicly_viewable($post_id)) {
    echo 'Запись публично видима.';
} else {
    echo 'Запись не публично видима.';
}

Как работает функция is_post_publicly_viewable()?

Функция is_post_publicly_viewable() используется для определения, является ли запись общедоступной для просмотра.

Она принимает один параметр — $post, который может быть идентификатором записи, объектом записи или null. Если параметр не указан, то используется глобальная переменная $post.

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


$post_id = 123;
$is_public = is_post_publicly_viewable($post_id);
if ($is_public) {
    echo 'Запись доступна для просмотра';
} else {
    echo 'Запись не доступна для просмотра';
}

Какие значения может возвращать функция is_post_publicly_viewable()?

Функция is_post_publicly_viewable() может вернуть два значения: true или false.

Если запись является общедоступной для просмотра, то функция вернет true. В противном случае, если запись не является общедоступной, функция вернет false.


$post_id = 456;
$is_public = is_post_publicly_viewable($post_id);
if ($is_public) {
    echo 'Запись доступна для просмотра';
} else {
    echo 'Запись не доступна для просмотра';
}

Можно ли изменить видимость записи с помощью функции is_post_publicly_viewable()?

Функция is_post_publicly_viewable() только проверяет, является ли запись общедоступной для просмотра, и не предоставляет возможности изменить ее видимость.

Для изменения видимости записи можно использовать другие функции, такие как wp_update_post() или update_post_meta().

Функция is_post_publicly_viewable() полезна, когда требуется проверить видимость записи перед выполнением определенных действий, например, отображением контента или применением определенных фильтров.

Как использовать функцию is_post_publicly_viewable() в шаблоне WordPress?

Функция is_post_publicly_viewable() используется для определения, является ли запись общедоступной для просмотра. Она принимает один необязательный параметр — идентификатор записи или объект записи.

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


$post_id = 123; // идентификатор записи
if (is_post_publicly_viewable($post_id)) {
    echo 'Запись доступна для просмотра';
} else {
    echo 'Запись не доступна для просмотра';
}

Как проверить видимость записи на странице архива?

Для проверки видимости записи на странице архива можно использовать функцию is_post_publicly_viewable() с параметром, указывающим на текущую запись архива.

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


if (is_post_type_archive() && is_post_publicly_viewable()) {
    echo 'Запись доступна для просмотра на странице архива';
} else {
    echo 'Запись не доступна для просмотра на странице архива';
}

Как проверить видимость записи на странице отдельной записи?

Для проверки видимости записи на странице отдельной записи можно использовать функцию is_post_publicly_viewable() с параметром, указывающим на текущую запись.

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


if (is_single() && is_post_publicly_viewable()) {
    echo 'Запись доступна для просмотра на странице отдельной записи';
} else {
    echo 'Запись не доступна для просмотра на странице отдельной записи';
}

Функция is_post_publicly_viewable() возвращает булево значение, указывающее, является ли запись общедоступной для просмотра. Она может быть использована в шаблонах WordPress для проверки видимости записи на странице архива или отдельной записи. При использовании этой функции необходимо указать идентификатор или объект записи в качестве параметра.

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

  • Функция get_post(): возвращает объект поста по его ID.
  • Функция get_post_field(): возвращает значение указанного поля поста.
  • Функция get_post_status(): возвращает статус указанного поста.
  • Функция get_post_type(): возвращает тип указанного поста.
  • Функция get_permalink(): возвращает постоянную ссылку на указанный пост.
  • Функция get_the_title(): возвращает заголовок указанного поста.
  • Функция has_post_thumbnail(): проверяет, есть ли у указанного поста миниатюра.
  • Функция the_content(): выводит содержимое указанного поста.
  • Функция the_excerpt(): выводит отрывок указанного поста.
  • Хук pre_get_posts: позволяет изменить параметры запроса для получения постов.
Обсуждение