Функция возвращает абсолютный 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>