Нравится мне стандартный виджет WordPress RSS — с его помощью можно немного разнообразить блог и поделиться с читателями какой-то интересной информацией. Не нравится только то, что этот RSS WordPress не закрывает ссылки на свои элементы от индексации. По-хорошему надо бы иметь возможность делать это — убирать ссылки из виджетов WordPress или добавлять к ним nofollow и noindex. И такая возможность есть и легко доступна.
Для начала нужно найти файл, отвечающий в WordPress за вывод RSS-виджета. Для этого я воспользовался утилитой grep (благо, поиска альтернатив она точно не требует):
grep -rino --exclude=cache 'rsswidget' ./* | more
Из результатов поиска в первую очередь мне показался интересным файл ./wp-includes/default-widgets.php, и именно в него нужно внести правки для запрещения индексации или удаления ссылок из элементов RSS-виджета или любых других стандартных виджетов WordPress.
Строку 728 нужно изменить следующим образом:
$title = "<noindex><a class='rsswidget' href='$url' title='" . esc_attr(__('Syndicate this content')) ."'><img style='background:orange;color:white;border:none;' width='14' height='14' src='$icon' alt='RSS' rel='nofollow' /></a></noindex> <noindex><a class='rsswidget' href='$link' title='$desc' rel='nofollow'>$title</a></noindex>";
тем самым мы запретим для индексации ссылку, стоящую в заголовке виджета.
Теперь закроем сами элементы RSS — заменим строку 837:
echo "<li><noindex><a class='rsswidget' href='$link' title='$desc' rel='nofollow'>$title</a></noindex>{$date}{$summary}{$author}</li>";
В этом же файле можно отредактировать не только RSS, но и остальные стандартные виджеты WordPress. Например, в виджете «Управление» может представлять интерес строка № 300:
<li><a href="http://wordpress.org/" title="Работает на WordPress">WordPress.org</a></li>
, содержащая прямую незакрытую ссылку на сайт WordPress.
Для создающих сайты с целью продажи ссылок количество внешних ссылок на странице — основоной показатель и редактирование стандартных виджетов поможет избавиться от «неугодных» ссылок.
Дальнейшее изучение default-widgets.php пусть будет самостоятельным заданием для заинтересовавшихся.
Всем успехов! 🙂
Еще можно закрыть ссылки в счетчиках (mail\rambler).
Безусловно, но там всё довольно очевидно, поскольку код счетчика выдаётся вам на руки, а тут надо поискать.
Не все очевидно. Например liveinternet когда я добавил nofollow вырубил счетчик.
У меня тоже их счетчик висит, но не припомню таких сложностей. Может код поменяли?
Кирилл, слава богу, у меня счетчик работает с nofollow уже второй год… Не думал что за это кстати, могут вырубить
Да счётчики — это вообще вечная проблема (((
Хорошая статья мне понравилась
а как закрыть вообще все виджеты
Что вы под этим понимаете? Просто удалить с сайдбаров можно через админку, код стандартных виджетов лежит в default-widgets.php, а плагины ставят свои виджеты.
Не отображается код 🙁
По вопросу закрытия счетчика от индексации.
Заключите счетчик в divы, в divaх пропишите rel=»nofollow»
Готово!
Тип такого:
? У меня в принципе просто ссылки в счетчиках закрыты в noindex и nofollow и работают нормально.
Код можно вставить внутри тега
<code>
.