Убираем ссылки на RSS со страниц терминов

Есть у Drupal такая привычка на странице терминов таксономии указывать в метатегах ссылки на RSS Feed, а у Google есть привычка игнорировать Robots.txt и индексировать весь этот хлам. В один момент мне это надоело и я решил побороть это.

Может для разработчика это и мелочь, но меня, как SEOшника, наличие мусорных страниц в "соплях" Google (Supplemental Index) дико раздражают. Индексируются эти страницы благодаря тому, что в страницы присутствует ссылка на RSS, например:

  1. <link rel="alternate" type="application/rss+xml" title="RSS - Google" href="http://www.angarsky.ru/taxonomy/term/10/feed" />

Первой мыслью для решения этой задачи было использовать hook_menu_alter() для отключения страницы RSS термина вообще в целом. Однако это не помогло: страницы отключена, а ссылка в метатегах все равно осталась. Поэтому пришлось подбираться к метатегам через hook_html_head_alter():

  1. /**
  2.  * Implements hook_html_head_alter().
  3.  */
  4. function MY_MODULE_html_head_alter(&$head_elements) {
  5. foreach ($head_elements as $key => $element) {
  6. // Disables links to taxonomy term rss.
  7. $href = isset($element['#attributes']['href']) ? $element['#attributes']['href'] : NULL;
  8. if (isset($href) && preg_match("/taxonomy\/term\/[0-9]+\/feed$/", $href)) {
  9. unset($head_elements[$key]);
  10. }
  11. }
  12. }

Видел решение, где вместо RegExp предлагалось проверять на $element['#attributes']['type'] == 'application/rss+xml', однако считаю его не совсем корректным, так как этой проверкой можно зарубить ссылки и на нужные фиды RSS.

Комментарии

Аватар пользователя Dzmitry Roshchyn
Dzmitry Roshchyn

Благодарю за код. Вопрос. Как мне убрать значок и ссылку в нем на ленту, как на главной станице так и таксономиях. Тема стандартная, garland.

Аватар пользователя angarsky
angarsky
В page.tpl.php убрать $feed_icons попробуй.
Аватар пользователя Дмитрий
Дмитрий

Приветы! Странно, однако хук не работает [добавлял в template темы], в исходом коде таксономий всё равно вылазит ссылка на RRS.

Добавить комментарий

 888     888  8888888b.              .d8888b.  
888 888 888 Y88b d88P Y88b
888 888 888 888 888 888
Y88b d88P 888 d88P .d88b. Y88b. d888
Y88b d88P 8888888P" d8P Y8b "Y888P888
Y88o88P 888 T88b 88888888 888
Y888P 888 T88b Y8b. Y88b d88P
Y8P 888 T88b "Y8888 "Y8888P"


Зарегистрируйтесь для добавления материалов без проверки.