Функция edit_tag_link()
используется в WordPress для вывода ссылки на редактирование текущей метки (тега). Эта функция может быть полезна, когда нужно предоставить ссылку на редактирование метки пользователю, имеющему соответствующие права (обычно администратору или редактору).
edit_tag_link( string $link = '', string $before = '', string $after = '', WP_Term $tag = null )
Параметры
- $link (строка, необязательный) — Текст ссылки. Если оставить пустым, используется значение по умолчанию —
'Edit This'
. - $before (строка, необязательный) — Текст, который будет выведен перед ссылкой. По умолчанию: пустая строка.
- $after (строка, необязательный) — Текст, который будет выведен после ссылки. По умолчанию: пустая строка.
- $tag (объект WP_Term, необязательный) — Объект метки (термина). Если передать
null
, функция использует текущий объект метки.
Возвращаемые значения
- null — Функция не возвращает значение, а выводит HTML-код ссылки на редактирование метки.
Пример 1: Вывод ссылки на редактирование текущей метки
Самый простой пример использования функции. Если текущая страница — это страница метки (например, страница архива метки), то выводится ссылка на её редактирование:
<?php edit_tag_link(); ?>
Этот код выведет ссылку с текстом «Edit This» (или аналогичный текст в зависимости от локализации), если пользователь имеет соответствующие права.
Пример 2: Изменение текста ссылки и добавление HTML-контейнера
В этом примере мы изменим текст ссылки на «Изменить метку» и обернем ссылку в HTML-тег <p>
:
<?php edit_tag_link('Изменить метку', '<p>', '</p>'); ?>
Результат:
<p><a href="http://example.com/wp-admin/edit-tags.php?tag_ID=46">Изменить метку</a></p>
Пример 3: Редактирование метки по ID
Вы можете указать конкретный объект метки для редактирования, если не хотите использовать текущий объект метки. Например:
$tag = get_term_by( 'slug', 'my-tag-slug', 'post_tag' );
if ( $tag ) {
edit_tag_link( 'Редактировать метку', '<p>', '</p>', $tag );
}
Этот код получит объект метки по её слагу и выведет ссылку на её редактирование, если объект найден.
Пример 4: Фильтрация ссылки на редактирование
WordPress предоставляет фильтр edit_term_link
, который позволяет изменять параметры ссылки на редактирование. Например, можно изменить текст ссылки в зависимости от ID метки:
add_filter( 'edit_term_link', 'custom_edit_tag_link', 10, 3 );
function custom_edit_tag_link( $link, $tag_id, $taxonomy ) {
if ( $taxonomy == 'post_tag' ) {
$link = str_replace( 'Edit This', 'Редактировать метку #' . $tag_id, $link );
}
return $link;
}
Этот фильтр изменит текст ссылки на «Редактировать метку #ID» для всех меток.
Заключение
Функция edit_tag_link()
— это удобный инструмент для отображения ссылок на редактирование меток на страницах архива меток. Она предоставляет гибкость в настройке текста ссылки и её обрамления в HTML-контейнеры, а также легко интегрируется с другими функциями для работы с метками в WordPress.