Закрываем все ссылки на изображения в nofollow
Опубликовано: 01.09.2018

Сегодня поставил себе интересную задачу – закрыть от индексации все ссылки на изображения (как внешние, так и внутренние) на моем WordPress блоге.
Noindex Nofollow Posts не индексировать записи из категории
Если с внешними все понятно, то с внутренними может возникнуть вопрос: « зачем добавлять nofollow к внутренним ссылкам? ».
Вопрос резонный, имеет место быть.
Все дело в СЕО-мифах. Некоторые считают, что страница донор (которая ссылается) при передаче веса акцептору (на кого ссылается. В данном случае – страница с изображением) теряет свой вес. В принципе, звучит очень даже логично. У ссылок ведь есть свои факторы ранжирования.
На некоторых сайтах, как например мой блог, картинки не всегда уникальны и уж тем более не приносят траффик из поиска по картинкам. Их не нужно прокачивать. Поэтому есть смысл закрыть от индексации внутренние ссылки на изображения.
Конечно же, это не касается проектов, изобилующих множеством изображений и фотографий, при этом получающим траффик из поиска по картинкам. В таком случае закрывать не нужно.
На сайтах с маленьким количеством статей, данная проблема легко решаема ручным проставлением атрибута nofollow. Но если статей тысячи? Без автоматизации процесса на это уйдет очень много времени.
Первое что мне пришло в голову – воспользоваться SQL-запросом , так как найти WordPress плагин , выполняющий подобные функции маловероятно.
Я не силен в работе с базой данных, однако, мне посчастливилось ознакомиться с одной интересной статьей, в которой описаны 20 полезных SQL-запросов . Советую ее прочитать. Она меня выручала уже несколько раз.
Итак, из этой статьи нас интересует конструкция по замене одного текста из таблицы wp_posts (тут хранятся все статьи) на другой:
UPDATE wp_posts SET post_content = REPLACE (post_content, ' меняем текст ', ' на что меняем ')Теперь нужно определить правильную формулировку заменяемого и заменяющего участков текста.
Такую структуру имеет ссылка на изображение в WordPress:
<a href="http://needsite.net/uploads/2014/08/установка-orphus.png"><img src="http://needsite.net/uploads/2014/08/установка-orphus.png" alt="установка orphus" /></a> data-rel="lightbox-0" title="">Меня тут заинтересовал вот этот кусок:
.png"><imgПри оформлении статей, используется не так много графических расширений. Как правило – jpg, gif, png.
Что мы делаем? А делаем мы следующее:
UPDATE wp_posts SET post_content = REPLACE (post_content, '.png"><img', '.png" rel=”nofollow”><img')Этот SQL-запрос добавит всем ссылкам на картинки с расширением png атрибут rel=”nofollow”
Можно еще улучшить конструкцию и добавить target=”_blank”, чтобы все ссылки открывались в новом окне:
UPDATE wp_posts SET post_content = REPLACE (post_content, '.png"><img', '.png" rel=”nofollow” target=”_blank”><img')Абсолютно ничего сложного.
Далее по аналогии добавляем nofollow и blank к jpg изображениям:
UPDATE wp_posts SET post_content = REPLACE (post_content, '.jpg"><img', '.jpg" rel=”nofollow” target=”_blank”><img')А так же к gif:
UPDATE wp_posts SET post_content = REPLACE (post_content, '.gif"><img', '.gif" rel=”nofollow” target=”_blank”><img')Для выполнения указанных действий желательно иметь хоть какое-то представление о работе SQL и PHPMyAdmin.