функция since 5.7.0

wp_force_plain_post_permalink()

Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.

Сигнатура

wp_force_plain_post_permalink( int|WP_Post|null $post = null, bool|null $sample = null ): bool

Описание

Определяет, должна ли запись всегда использовать простую структуру постоянных ссылок.

Параметры

$post int|WP_Post|null необязательный = null
Идентификатор записи или объект записи. По умолчанию — глобальная переменная $post.
$sample bool|null необязательный = null
Следует ли принудительно выполнять проверку на основе образцовых ссылок. Если не указано, образцовая ссылка генерируется, когда передаётся объект записи со свойством filter, равным 'sample'.

Возвращаемое значение

bool

Исходный код

wp-includes/link-template.php:103

function wp_force_plain_post_permalink( $post = null, $sample = null ) {
	if (
		null === $sample &&
		is_object( $post ) &&
		isset( $post->filter ) &&
		'sample' === $post->filter
	) {
		$sample = true;
	} else {
		$post   = get_post( $post );
		$sample = $sample ?? false;
	}

	if ( ! $post ) {
		return true;
	}

	$post_status_obj = get_post_status_object( get_post_status( $post ) );
	$post_type_obj   = get_post_type_object( get_post_type( $post ) );

	if ( ! $post_status_obj || ! $post_type_obj ) {
		return true;
	}

	if (
		// Publicly viewable links never have plain permalinks.
		is_post_status_viewable( $post_status_obj ) ||
		(
			// Private posts don't have plain permalinks if the user can read them.
			$post_status_obj->private &&
			current_user_can( 'read_post', $post->ID )
		) ||
		// Protected posts don't have plain links if getting a sample URL.
		( $post_status_obj->protected && $sample )
	) {
		return false;
	}

	return true;
}

История изменений

ВерсияОписание
5.7.0 Introduced.

Что будем искать? Например,Продвижение

Этот сайт использует куки-файлы. Оставаясь на сайте, Вы соглашаетесь на их использование. Для получения дополнительной информации, пожалуйста, ознакомьтесь с политикой в отношении персональных данных.