WordPress как на ладони
Официальная конференция по WordPress в Moскве 18-19 августа, начало в 9:00 wordpress jino

get_post_status() WP 2.0.0

Получает статус (publish, draft) поста на основе переданного ID.

Если функции был передан ID прикрепленной записи, то функция вернет статус родительской записи. Если ввести ID медиа записи, которая не прикреплена ни к какому посту, то она будет считаться опубликованной - функция выведет 'publish'

Работает на основе: get_post()
✈ 1 раз = 0.000357с = быстро | 50000 раз = 0.29с = очень быстро PHP 7.0.5, WP 4.4.2
Хуки из функции:

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

<?php get_post_status( $ID ) ?>

$ID(число)

Идентификатор (ID) записи
По умолчанию: нет

Примеры

Выведем на экран статус поста с идентификатором 121

$rrr = get_post_status( 121 );
echo $rrr;
// выведт: publish, если пост опубликован. draft, если это черновик и т.д.

Код get_post_status: wp-includes/post.php VER 4.9.8

<?php
function get_post_status( $ID = '' ) {
	$post = get_post($ID);

	if ( !is_object($post) )
		return false;

	if ( 'attachment' == $post->post_type ) {
		if ( 'private' == $post->post_status )
			return 'private';

		// Unattached attachments are assumed to be published.
		if ( ( 'inherit' == $post->post_status ) && ( 0 == $post->post_parent) )
			return 'publish';

		// Inherit status from the parent.
		if ( $post->post_parent && ( $post->ID != $post->post_parent ) ) {
			$parent_post_status = get_post_status( $post->post_parent );
			if ( 'trash' == $parent_post_status ) {
				return get_post_meta( $post->post_parent, '_wp_trash_meta_status', true );
			} else {
				return $parent_post_status;
			}
		}

	}

	/**
	 * Filters the post status.
	 *
	 * @since 4.4.0
	 *
	 * @param string  $post_status The post status.
	 * @param WP_Post $post        The post object.
	 */
	return apply_filters( 'get_post_status', $post->post_status, $post );
}

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

Из метки: statuses (статус записи коммента юзера)

Еще из раздела: Записи: посты, страницы, ...

Комментариев нет
    Здравствуйте, !     Войти . Зарегистрироваться