Добавление ссылок в blogroll это не только отличный способ по привлечению дополнительной аудитории на Ваш проект, а и значительная помощь в развитии сайту со стороны seo продвижения. Но в обмене ссылками есть несколько нюансов, с которыми желательно подробно ознакомиться. Имеется в виду мониторинг купленных или обменных ссылок, для них лучше использовать специальное программное обеспечение. Если разработчики сайтов хотят обмениваться только посетителями (трафиком), тогда можно в блогролле закрывать ссылки от индексирования при помощи атрибута rel=»nofollow». С этого момента начинается самое интересное.
Хотелось бы обратить ваше внимание, что использование nofollow является очень полезным, если вы используете продвижение статьями, так как вес страницы с наименьшим числом исходящих ссылок, будет больше, нежели если кроме продвигаемой ссылки на странице будут еще исходящие линки.
Существует несколько вариантов добавления ссылок nofollow в blogroll wordpress блога, попробуем найти самый лучший из них. Самое первое, что может прийти на ум – установить какой-нибудь плагин. Такие плагины действительно есть, однако для решения такой не сложной задачи их использовать не хочется, потому этот вариант был мною пропущен. В теории код исходников wordpress всегда можно подправить вручную, но и этот вариант не самый лучший, стоит его на время отложить. Остались функции системы.
Для того чтобы выводилась ссылка блогролла в wordpress применяется функция wp_list_bookmarks. Если зайти в настройки параметров ссылки через панель управления администратора, Вы никаких опций там не найдете, потому мы пойдем другим путем: разделим обычные ссылки nofollow в различные категории и выведем их по отдельности:
[php]
<?php
wp_list_bookmarks(‘orderby=name&category=2&categorize=0&title_li=&title_before=&title_after=</div>&category_before=&category_after=’);
wp_list_bookmarks(‘orderby=name&category=3&categorize=0&title_li=&title_before=&title_after=</div>&category_before=&category_after=’);
?>
[/php]
Здесь category=2 (категория № 2) – это нормальные ссылки; category=3 – nofollow.
Изучив возможности и параметры wp_list_bookmarks, я пришел к такому выводу, что просто приписать в код ссылок стандартным методом для одной из категорий nofollow невозможно. Максимально, что можно добиться от этого кода – выводить через функцию нормальные ссылки, а те, которые выводит nofollow, прописывать вручную.
Существует файл функций functions.php, там часто встречаются переопределения действия обычных функций системы wordpress. Дальше, подсмотрел на англоязычном блоге хороший сниппет, где решается задача с nofollow в блогролее с помощью добавления пары строчек в functions.php:
[php]
function nofollow_my_bookmarks( $links ) {
foreach($links as $link) {
$link->link_rel .= ‘ nofollow’;
$link->link_rel = trim($link->link_rel);
}
return $links;
}
add_filter(‘get_bookmarks’, ‘nofollow_my_bookmarks’);
[/php]
По идее предложенный код обязан был добавить nofollow во все ссылки.
В теории конструкция, весьма оправданная, должна делать то, что ей положено, но у меня этот код не сработал. Пробуя разные варианты, я потратил немало времени, но все же сделал вывод, что действительно в функции определяется атрибут rel для ссылок блогролла, но не устанавливается новое значение. И тут я обратил свое внимание, что в блоге есть механизм кеширования wordpress. Я его отключил, но, увы, ничего не произошло. Решил не отчаиваться и по тестировать этот код на другом блоге, и, о чудо, там все отлично сработало, все ссылки получились nofollow! Почему не захотел в первый раз на моем блоге – загадка.
Предлагаю чуть-чуть подправить вышеуказанный код, расставляющий nofollow для всех ссылок, так как нам может понадобиться прятать только некоторые из них. Необходимо:
1) Зайти в раздел «Ссылки» административного управления системой – для нужной записи выбирать в блоке «Отношение к ссылке», скажем опцию «Знакомый». Обратите внимание на поле rel, там для ссылки есть значение contact.
2) Нужно снова вернуться в файл functions.php и изменить код функции nofollow_my_bookmarks.
[php]
function nofollow_my_bookmarks( $links ) {
foreach($links as $link) {
if ($link->link_rel==’contact’) $link->link_rel = ‘nofollow’;
$link->link_rel = trim($link->link_rel);
}
return $links;
}
add_filter(‘get_bookmarks’, ‘nofollow_my_bookmarks’);
[/php]
В этом случаи, ссылки, отмеченные Вами в панели управления wordpress с отношением (contact) «Знакомый» будут с атрибутом nofollow.
В завершении, хочется отметить еще несколько вариантов добавления в wordpress блогролл nofollow.
1) Можно найти файл bookmark-template.php, который расположен в директории wp-includes, в нем строку:
[php]$output .= ‘<a href=»’ . $the_link . ‘»’ . $rel . $title . $target. ‘>’;[/php]
и приписать в нее rel=»nofollow» по образцу
[php]$output .= ‘<a href=»’ . $the_link . ‘»’ . $rel . $title . $target. ‘ rel=»nofollow»>’;[/php]
Но у этого метода есть один существенный недостаток: при обновлении системы wordpress файл перезаписывается, и код нужно заново вводить.
2) Этот вариант еще проще. Если в Вашем блоге всего около 6-ти ссылок, то можно вводить их в HTML код шаблона руками. Этот процесс займет несколько секунд, и вовсе не нужно переходить в админку и указывать «связь» для ссылки, создавая специальную функцию.
Еще точно не решил, какой вариант нравится мне больше. Первый, где нужно добавлять хак в файл функций functions.php во все блоги, но он может претерпеть изменения, вдруг разработчикам вздумается менять настройки wordpress. Или второй – в шаблоне блога приписывать HTML код ссылок, не требующий никаких знаний, да и абсолютно независящий от версий системы.