WordPress как на ладони
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 WP 4.9

<?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

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

get_post_status Комментариев нет

Здравствуйте, !

Ваш комментарий