Найти тему
Мечтательница

Отключение добавления rel="noopener noreferrer" в Wordpress

Оглавление

Добрый день, друзья!

Эта запись будет короткой, в основном для людей, использующих последние версии знаменитого php-движка Wordpress.

В последних версиях при редактировании записей в редакторе tinyMCE (а может и не только в нём, не знаю) при публикации ссылок в них автоматически добавляется атрибут rel="noopener noreferrer". Если вы не знаете что это такое, то этот пост для вас, возможно, неинтересен. Функции атрибутов noopener и noreferrer здесь объяснять не буду, если вы продолжаете читать этот пост, то и так знаете.

Да, конечно, в различных источниках пишут, что на SEO это никак не влияет, только повышает безопасность, но многие пользователи (в том числе и я) решили не испытывать судьбу и избавиться от этого бонуса от разработчиков WP. Как обычно, для этого есть два пути: устанавливать специализированный плагин или добавлять фильтры в файл functions.php активной темы.

Пользователю, для которого приемлем первый способ, следует в админке своего блога открыть пункт меню «Плагины —> Добавить новый» и в правом верхнем углу в строке поиска написать, например, «noopener». В вывалившихся результатах можно выбрать наиболее понравившееся, например «Udinra Noopener Noreferrer Remove».

Я пошла по второму пути, решила поставить фильтры. Искала готовое в сети, чего только не увидела. Некоторые делают фильтры даже через регулярные выражения, заменяющие noopener и noreferrer на «ничего». Больше всего мне понравился вот этот вариант:

add_filter('tiny_mce_before_init', function ($init) {
$init['allow_unsafe_link_target'] = true;
return $init;
});
add_filter('wp_targeted_link_rel', function () {
return;
});

Это я себе и поставила. Коротко и ясно. Всё работает на WP 5.4.2, на данный момент самой новой версии.

Можете сделать так же :-)

-2

Пока, всем успехов и хорошего настроения!