WP_TARGETED_LINK_REL() │ WP 5.1.0
Введение
Функция WP_TARGETED_LINK_REL была устаревшей с версии 6.7.0 и больше не поддерживается. В будущем она может быть удалена. Рекомендуется заменять её на аналогичную.
Эта функция добавляет атрибуты rel="noreferrer" и rel="noopener" ко всем HTML элементам <a>, у которых установлен атрибут target.
Использует: wp_targeted_link_rel_callback()
Производительность
- 1 вызов — 0.000249 сек (быстро)
- 50 000 раз — 0.22 сек (очень быстро)
- PHP 7.2.16, WP 5.2
Возвращаемое значение
Функция возвращает строку — преобразованное содержимое.
Применение
wp_targeted_link_rel( $text );
$text(строка, обязательный параметр) — содержимое, которое может содержать HTML элементы<a>.
Примеры
Предположим, у вас есть следующий текст:
$text = 'Foo google bar';
Используя функцию wp_targeted_link_rel, вы получите:
echo wp_targeted_link_rel( $text );
// Foo google bar
С версии WP 5.1.0 можно добавлять атрибуты rel к любому куску HTML кода.
Пример того, как это используется в wp-includes/widgets/class-wp-widget-text.php:
$text = wp_targeted_link_rel( $text );
Список изменений
- С версии 5.1.0 — введена функция.
- С версии 5.6.0 — удален атрибут
noreferrer. - Устарела с версии 6.7.0.
Исходный код функции
Вот как выглядит код самой функции:
function wp_targeted_link_rel( $text ) {
_deprecated_function( FUNCTION, '6.7.0' );
// Не выполнять (дорогой) regex, если нет ссылок с target.
if ( stripos( $text, 'target' ) === false || stripos( $text, '/si';
preg_match_all( $script_and_style_regex, $text, $matches );
$extra_parts = $matches[0];
$html_parts = preg_split( $script_and_style_regex, $text );
foreach ( $html_parts as &$part ) {
$part = preg_replace_callback( '|]*targets*=[^>]*)>|i', 'wp_targeted_link_rel_callback', $part );
}
$text = '';
for ( $i = 0; $i < count( $html_parts ); $i++ ) {
$text .= $html_parts[ $i ];
if ( isset( $extra_parts[ $i ] ) ) {
$text .= $extra_parts[ $i ];
}
}
return $text;
}
Заключение
Функция wp_targeted_link_rel полезна для улучшения безопасности ссылок на вашем сайте, добавляя необходимые атрибуты ко всем целевым ссылкам. Обратите внимание, что функция устарела и ее использование не рекомендуется.