is_post_type_viewable

Определяет является ли указанный тип записи публичным (доступным для просмотра во внешней части сайта). Указывать нужно объект типа записи.

Проверяется параметр publicly_queryable для произвольных типов записей и параметр public для встроенных типов записей, таких как post и page.

Использует глобальную переменную $post_type_object.
✈ 1 раз = 0.000015с = очень быстро | 50000 раз = 0.04с = скорость света PHP 7.0.5, WP 4.4.2

Хуков нет.

Возвращает

True/false. true – если тип записи просматриваемый и false в противном случае.

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

is_post_type_viewable( $post_type );
$post_type(строка/объект) (обязательный)
Объект типа записи. С версии 4,5 можно указывать название типа записи. Название типа записи.

Примеры

#1 Проверим является ли тип записи просматриваемым

Допустим есть тип записи myposts и нам нужно проверить могут ли обычные посетители видеть этот тип записи.

$obj = get_post_type_object( 'myposts' );
if( is_post_type_viewable($obj) )
	echo 'просматриваемый тип записи';
else
	echo 'внутренний тип записи';

Код из


wp-includes/post.php

WP 4.7.2

<?php
function is_post_type_viewable( $post_type ) {
	if ( is_scalar( $post_type ) ) {
		$post_type = get_post_type_object( $post_type );
		if ( ! $post_type ) {
			return false;
		}
	}

	return $post_type->publicly_queryable || ( $post_type->_builtin && $post_type->public );
}

Комментарии:


Оставить комментарий

Your email address will not be published. Required fields are marked *