Устаревшая функция WP_TARGETED_LINK_REL: замените её на актуальную – WP 5.1.0

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, ']*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 полезна для улучшения безопасности ссылок на вашем сайте, добавляя необходимые атрибуты ко всем целевым ссылкам. Обратите внимание, что функция устарела и ее использование не рекомендуется.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *