get_page_link() — возвращает ссылку на страницу (тип поста page, но работает и для записей тоже).

Функция возвращает абсолютный URL текущей страницы (если используется в цикле) или же страницы с указанным в параметрах ID. Все параметры необязательные. Все параметры по умолчанию имеют значение false.

Если же страница установлена на морду сайта, тогда результатом действия функции будет значение home_url('/').

get_page_link( $post = false, $leavename = false, $sample = false )
$post
(целое число|объект) ID или объект страницы, по умолчанию — текущая страница из цикла.
$leavename
(логическое) если установлено true, то вместо урла будет возвращать структуру постоянных ссылок для страниц.
$sample
(логическое) для этого параметра есть несколько случаев:

  • Если страница не является черновиком и не находится на модерации (статусы draft, pending, auto-draft), тогда вне зависимости от параметра $sample, будет выводиться ссылка на страницу как обычно;
  • Если же страница имеет один из перечисленных статусов (ну т.е. она не опубликована), тогда по умолчанию ее URL будет вида: https://misha.agency/?page_id=2 (в этом случае параметр $leavename кстати будет игнорироваться), однако если параметр $sample установить равным true, тогда в URL будет учитываться структура постоянных ссылок, например: https://misha.agency/sample-page.

Примеры

Предположим, у нас есть какая-то страница с ID=2 и ярлыком sample-page.

echo get_page_link( 2 );
// https://misha.agency/sample-page
echo get_page_link( 2, true );
// https://misha.agency/%pagename%
<?php $page_id = 2 ?>
<a href="<?php echo get_page_link( $page_id ); ?>">Перейти →</a>

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Пишите, если нужна помощь с сайтом или разработка с нуля.

Комментарии — 2

Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.

Миша Рудрастых и WordPress

Полезности из мира WordPress и жизни студии.

Мой телеграм-канал