Функция edit_post_link()
генерирует и выводит HTML-код ссылки на страницу редактирования поста, если у пользователя есть разрешение на внесение изменений. Она чаще всего используется внутри Цикла WordPress для предоставления возможности редактирования поста непосредственно из фронтенда.
Функция работает на основе get_edit_post_link()
, которая формирует URL для редактирования поста. Основная цель edit_post_link()
— вывести ссылку, которая позволяет авторизованным пользователям с правами редактирования перейти на страницу редактирования.
edit_post_link( $link = null, $before = '', $after = '', $id = 0, $class = 'post-edit-link' )
Параметры
$link
(строка) (необязательно): Текст ссылки. По умолчанию используется'Edit This'
для вывода текста «Редактировать».$before
(строка) (необязательно): HTML-код, который будет размещен перед ссылкой. По умолчанию пусто.$after
(строка) (необязательно): HTML-код, который будет размещен после ссылки. По умолчанию пусто.$id
(целое число) (необязательно): ID поста, для которого нужно создать ссылку. По умолчанию используется ID текущего поста в Цикле.$class
(строка) (необязательно, начиная с версии 4.4): CSS-класс для ссылки. По умолчанию'post-edit-link'
.
Возвращаемое значение
Функция edit_post_link()
не возвращает значение. Вместо этого она напрямую выводит HTML-код ссылки на экран.
Пример 1: Вывод стандартной ссылки на редактирование
Чтобы вывести ссылку на редактирование поста для авторизованных пользователей, имеющих права на изменение постов, используйте следующий код:
<?php edit_post_link(); ?>
Это сгенерирует HTML-код ссылки, подобный этому:
<a class="post-edit-link" href="https://example.com/wp-admin/post.php?post=19&action=edit">Редактировать</a>
Пример 2: Изменение текста ссылки и добавление HTML-тегов
Если вам нужно изменить текст ссылки и обернуть ее в HTML-теги, можно использовать следующий код:
<?php edit_post_link('Изменить', '<p>', '</p>'); ?>
Этот код выведет ссылку с текстом «Изменить», которая будет обернута в тег <p>
:
<p><a class="post-edit-link" href="https://example.com/wp-admin/post.php?post=19&action=edit">Изменить</a></p>
Пример 3: Добавление пользовательского CSS-класса
Для добавления пользовательского CSS-класса к ссылке можно использовать следующий код:
<?php edit_post_link('Редактировать этот пост', '<div>', '</div>', 0, 'my-custom-class'); ?>
В результате будет выведена ссылка с дополнительным классом 'my-custom-class'
:
<div><a class="my-custom-class" href="https://example.com/wp-admin/post.php?post=19&action=edit">Редактировать этот пост</a></div>
Примечания
- Функция
edit_post_link()
должна использоваться внутри Цикла WordPress, чтобы правильно получать ID текущего поста. Если функция используется вне Цикла, обязательно укажите ID поста с помощью параметра$id
. - С помощью параметра
$class
, доступного начиная с версии 4.4, можно добавить произвольный CSS-класс для стилизации ссылки.
Заключение
Функция edit_post_link()
является мощным инструментом для управления редактированием контента и улучшения пользовательского опыта в WordPress. Она предоставляет простое решение для создания интерактивных ссылок, которые позволяют пользователям с соответствующими правами легко редактировать посты.