get_page_uri() WP 1.5.0

Отримує шлях (URL без домену) до вказаної постійної сторінки. Збирає ярлики поточної та всіх батьківських сторінок та об’єднує їх слешем /.

Якщо сторінка має батьківські сторінки, вони будуть додані в дорогу через слеш /: roditel/page_name.

Коли потрібно отримати УРЛ постійної сторінки, майже завжди використовується функція get_permalink() . Вона до того ж працює з кешем, а значить швидше…

Працює на основі:
get_post()
1 раз – 0.000237 сек
(швидко) | 50000 разів – 3.85 сек
(швидко)

Хуки з функції

Повертає

Строку|false. URI сторінки, false – у разі помилки.

Використання

get_page_uri ($ page);
$page
(WP_Post/об’єкт/число)
ID або об’єкт сторінки, URI якої потрібно отримати. З версії 4.6. параметр став необов’язковим.


Типово: 0 (поточний запис)

Приклади

0

#1 Отримаємо шлях до поточної сторінки

Допустимо у нас є сторінка 1544з ярликом mypageі вона є дочірньою до parent. Тоді:

echo get_page_uri (1544); // поверне: parent/mypage

список змін

З версії 1.5.0Введено.
З версії 4.6.0The $page parameter був зроблений optional.

Код get_page_uri() WP 6.0.2

function get_page_uri( $page = 0 ) {
	if ( ! $page instanceof WP_Post ) {
		$ page = get_post ($ page);
	}

	if ( ! $page ) {
		return false;
	}

	$uri = $page->post_name;

	foreach ( $page->ancestors as $parent ) {
		$ parent = get_post ($ parent);
		if ( $parent && $parent->post_name ) {
			$uri = $parent->post_name . '/'. $uri;
		}
	}

	/**
	 * Filters URI на сторінці.
	 *
	 * @ Since 4.4.0
	 *
	 * @param string $uri Page URI.
	 * @param WP_Post $page Page object.
	 */
	return apply_filters( 'get_page_uri', $uri, $page);
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *