Функция GET_POST_STATUSES() в WordPress: описание, возвращаемое значение, использование

Функция GET_POST_STATUSES() в WordPress

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

Возврат значения

Функция возвращает массив строк, где ключами являются статусы записей, а значениями — их названия.

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

Для того чтобы использовать функцию, просто вызовите её:

get_post_statuses();

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

Пример 1: Получение всех зарегистрированных статусов

Вы можете получить все стандартные статусы записей с помощью следующего кода:

$statuses = get_post_statuses();

/* $statuses будет содержать массив:
Array
(
    [draft]   => Черновик
    [pending] => На рассмотрении
    [private] => Личный
    [publish] => Опубликовано
)
*/

Пример 2: Получение всех статусов, включая пользовательские

Если вы хотите увидеть все статусы, включая пользовательские, вы можете использовать следующий код в хуке init:

add_action( 'init', function () {
    global $wp_post_statuses;

    var_dump( $wp_post_statuses );

    // Результат... с 'custom_status'
    /*
    array(
        "publish",
        "future",
        "draft",
        "pending",
        "private",
        "trash",
        "auto-draft",
        "inherit",
        "custom_status" // <-- вот и он
    )
     */

}, PHP_INT_MAX );

Важно!

Обратите внимание, что функция get_post_statuses() возвращает фиксированный список статусов. Этот список не включает некоторые статусы, такие как "future" (будущий).

Чтобы увидеть полный список всех доступных статусов записей в вашей установке WordPress, используйте функцию get_post_stati().

Изменения

Функция была добавлена в WordPress начиная с версии 2.5.0.

Код функции get_post_statuses

Вот код функции, который вы можете найти в файле wp-includes/post.php:

function get_post_statuses() {
    $status = array(
        'draft'   => __( 'Черновик' ),
        'pending' => __( 'На рассмотрении' ),
        'private' => __( 'Личный' ),
        'publish' => __( 'Опубликовано' ),
    );

    return $status;
}

Связанные функции

Вот некоторые связанные функции, которые могут быть полезны:

  • get_post_stati()
  • get_post_status()
  • get_post_status_object()
  • get_status_header_desc()
  • register_post_status()
  • wp_set_comment_status()
  • wp_transition_comment_status()
  • wp_transition_post_status()

Эти функции могут помочь вам в работе с состояниями записей и комментариев в WordPress.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *