Функция get_edit_post_link()
используется для получения URL-адреса страницы редактирования поста в админке WordPress. В отличие от функции edit_post_link()
, которая выводит готовую HTML-ссылку, эта функция возвращает только сам URL, что позволяет более гибко использовать его в шаблонах или других местах, где требуется настройка внешнего вида или поведения ссылки.
get_edit_post_link(
int|WP_Post $id = 0,
string $context = 'display',
bool $allow_fallback = true
);
Аргументы:
- $id (int|WP_Post): ID поста или объект поста. Если не указан, используется текущий пост в цикле.
- $context (строка): Определяет, как будет возвращен URL. Может быть:
'display'
— экранирует URL для безопасного вывода в HTML (используется по умолчанию).'raw'
— возвращает необработанный URL (без экранирования).
- $allow_fallback (bool): Если
true
, WordPress попробует использовать текущее состояние записи для получения ссылки, еслиid
не указан. По умолчанию это значение установлено какtrue
.
Пример использования
Чтобы получить ссылку на редактирование поста и вывести её в шаблоне, можно использовать следующий код:
<?php
$post_edit_url = get_edit_post_link();
if ( $post_edit_url ) {
echo '<a href="' . esc_url( $post_edit_url ) . '">Редактировать этот пост</a>';
}
?>
Этот код создаст ссылку на редактирование текущего поста, если у пользователя есть соответствующие права на редактирование. Функция esc_url()
используется для экранирования URL перед выводом.