Функция edit_term_link()
в WordPress позволяет отображать или получать ссылку для редактирования указанного термина таксономии с возможностью форматирования. Эта функция удобна для добавления ссылок на редактирование в пользовательские шаблоны и админ-панели.
edit_term_link( string $link = '', string $before = '', string $after = '', int|WP_Term|null $term = null, bool $display = true ): string|void
Параметры
- $link (string, необязательный): Текст ссылки (анкор). Если пусто, используется текст по умолчанию — «Edit This».
- По умолчанию:
''
- По умолчанию:
- $before (string, необязательный): Текст, который будет отображён перед ссылкой.
- По умолчанию:
''
- По умолчанию:
- $after (string, необязательный): Текст, который будет отображён после ссылки.
- По умолчанию:
''
- По умолчанию:
- $term (int|WP_Term|null, необязательный): ID термина или объект термина. Если
null
, будет использован текущий объект запроса.- По умолчанию:
null
- По умолчанию:
- $display (bool, необязательный): Определяет, следует ли выводить результат на экран или возвращать его для обработки в PHP.
- По умолчанию:
true
- По умолчанию:
Возврат
Функция возвращает строку (HTML-тег <a>
с ссылкой) или void
, если у пользователя нет прав редактирования термина.
Описание
edit_term_link()
используется для отображения ссылки на редактирование термина таксономии. Если у пользователя нет прав на редактирование указанного термина, функция вернёт null
. В качестве основы для работы служит функция get_edit_term_link()
.
Пример 1: Вывод ссылки на редактирование текущего термина
Предположим, что вы вызываете эту функцию на странице таксономии. Ссылка будет автоматически генерироваться для текущего термина:
edit_term_link();
// Вывод:
// <a href="http://example.com/wp-admin/edit-tags.php?action=edit&taxonomy=brand&tag_ID=123&post_type=cars">Редактировать</a>
Пример 2: Вывод ссылки на редактирование указанного термина
Если у вас есть ID термина и вы хотите отобразить ссылку для его редактирования, вы можете передать объект термина:
$term = get_term(123); // Получаем термин с ID 123
edit_term_link('Редактировать термин', '', '', $term, false);
// Вывод:
// <a href="http://example.com/wp-admin/edit-tags.php?action=edit&taxonomy=brand&tag_ID=123&post_type=cars">Редактировать термин</a>
Пример 3: Добавление текста перед и после ссылки
Вы также можете настроить вывод, добавив текст до и после ссылки:
$term = get_term(123); // Получаем термин
edit_term_link('Редактировать', '<span class="edit-term">', '</span>', $term);
Пример 4: Проверка прав пользователя
Если вам нужно убедиться, что у пользователя есть права на редактирование термина перед вызовом функции, вы можете использовать current_user_can()
:
$term_id = 25; // ID термина
if (current_user_can('edit_terms', $term_id)) {
edit_term_link('Редактировать этот термин', '', '', $term_id);
} else {
echo 'У вас нет прав на редактирование этого термина.';
}
Заключение
Функция edit_term_link()
является мощным инструментом для создания ссылок на редактирование терминов таксономии в WordPress. Она позволяет разработчикам легко добавлять ссылки на редактирование в пользовательские шаблоны и контролировать форматирование этих ссылок. Не забывайте проверять права пользователя на редактирование, чтобы обеспечить безопасность и корректное функционирование вашего сайта.