Функция get_post_permalink()
в WordPress предназначена для получения постоянной ссылки (permalink) на заданный пост или персональный пост-тайп. Эта функция может быть особенно полезна для работы с произвольными типами записей, когда требуется получить URL для использования в вашем коде.
get_post_permalink( int|WP_Post $post, bool $leavename = false, bool $sample = false ): string|false
Параметры
- $id (число): Идентификатор поста или страницы, URL которой нужно получить. По умолчанию используется ID текущего поста в контексте цикла WordPress. Пример:
42
. - $leavename (логический, необязательный): Указывает, нужно ли сохранять имя поста в URL. Если
true
, имя поста не будет заменяться на плейсхолдер%post_type%
. По умолчанию:false
. - $sample (логический, необязательный): Указывает, является ли URL примером (образцом) ссылки. Это значение не влияет на вывод, но передается в хук
post_type_link
. По умолчанию:false
.
Возвращаемое значение
- Строка с URL постоянной ссылки на пост или страницу. Если пост не найден, возвращается
false
(начиная с WordPress 6.1).
Хуки
- post_type_link: Хук, который используется для фильтрации URL, возвращаемого функцией
get_post_permalink()
.
Пример 1: Получение постоянной ссылки для текущего поста
Внутри цикла WordPress можно использовать функцию без параметров для получения ссылки на текущий пост:
<?php
// Получаем постоянную ссылку для текущего поста
$permalink = get_post_permalink();
echo $permalink;
?>
Пример 2: Получение постоянной ссылки для поста по ID
Укажите ID поста, чтобы получить его постоянную ссылку:
<?php
// ID поста
$post_id = 225;
// Получаем постоянную ссылку для поста с ID 225
$permalink = get_post_permalink($post_id);
echo $permalink;
?>
Примечания
- Если пост с указанным ID не существует, функция вернет
false
. - Функция
get_post_permalink()
лучше использовать в связке с функциейget_permalink()
для общего получения постоянных ссылок, особенно для стандартных типов записей.
Заключение
Функция get_post_permalink()
является мощным инструментом для работы с URL-адресами постов и страниц в WordPress. Она позволяет гибко управлять ссылками и использовать их в различных частях вашего сайта или плагина.