Описание функции wp_targeted_link_rel()
Функция wp_targeted_link_rel() добавляет атрибуты rel к ссылкам, которые ведут на внешние ресурсы с целью улучшения SEO и защиты от вредоносных сайтов. Обычно используется для установки атрибута rel=’noopener’ или rel=’noreferrer’ на ссылки, открывающиеся в новой вкладке.
Функция полезна для обеспечения безопасности и улучшения производительности при использовании внешних ссылок.
Параметры
$link
Тип: string
Обязательный: Да
Описание: URL ссылки, к которой будет добавлен атрибут rel
Возможные значения:
$target
Тип: string
Обязательный: Нет
Описание: Целевой атрибут для ссылки (например, ‘_blank’)
Возможные значения:
0: _blank
1: _self
2: _parent
3: _top
Возвращаемое значение
Тип: string
Описание: Строка с атрибутом rel, который будет добавлен к ссылке
Возможные значения:
• noopener
• noreferrer
• noopener noreferrer
Примеры использования
Добавляет атрибут rel для внешней ссылки, открывающейся в новой вкладке
$rel = wp_targeted_link_rel('https://example.com', '_blank');
// Вывод: 'noopener noreferrer'
Если параметр target не указан, функция вернет пустую строку
$rel = wp_targeted_link_rel('https://example.com');
// Вывод: '' (пустая строка)
При передаче пустого URL функция вернет пустую строку
$rel = wp_targeted_link_rel('', '_blank');
// Вывод: '' (пустая строка)
Добавляет атрибут rel к ссылке в плагине
$link = 'Ссылка';
$rel = wp_targeted_link_rel('https://example.com', '_blank');
$link = str_replace('>', ' rel="' . $rel . '">', $link);
Безопасность
Валидация входных данных: Функция проверяет корректность переданных URL
Санитизация: Входные параметры очищаются для предотвращения XSS
Рекомендации: При выводе используйте esc_url() для URL и esc_attr() для атрибутов
— Связанные функции
Экранирует URL для безопасного использования
Экранирует атрибуты для безопасного использования
— Хуки
Фильтрует результат перед возвратом значения функции
— Примечания
– Ограничения
Не устанавливает атрибуты для внутренних ссылок
– Частые проблемы
- Некорректный URL может привести к ошибкам
- Отсутствие target может вызвать пустой вывод