Rss-лента на WordPress: как закрыть от индексации ссылки?
Как закрыть от индексации ссылки на сторонний сайт при трансляции на wordpress rss-ленты другого сайта.
Открываем файл вашсайт\wp-includes\widgets\class-wp-widget-rss.php
В файле ищем такой код:
$title = '<a class="rsswidget" href="' . esc_url( $url ) . '"><img class="rss-widget-icon" style="border:0" width="14" height="14" src="' . esc_url( $icon ) . '" alt="RSS" /></a> <a class="rsswidget" href="' . esc_url( $link ) . '">'. esc_html( $title ) . '</a>';
Если в названии виджета вам не нужна rss-иконка и ссылка на сайт-источник (донор), то от указанного кода должно остаться:
$title = esc_html( $title );
Я оставил себе только название виджета без иконки и ссылки.
Если же без иконки и ссылки вы жить не сможете, то код приобретает следующий вид:
$title = '<!--noindex--><a rel="nofollow" class="rsswidget" href="' . esc_url( $url ) . '"><img class="rss-widget-icon" style="border:0" width="14" height="14" src="' . esc_url( $icon ) . '" alt="RSS" /></a> <a rel="nofollow" class="rsswidget" href="' . esc_url( $link ) . '">'. esc_html( $title ) . '</a><!--/noindex-->';
Далее открываем файл: вашсайт\wp-includes\widgets.php
В указанном файле ищем код:
if ( $link == '' ) { echo "<li>$title{$date}{$summary}{$author}</li>"; } elseif ( $show_summary ) { echo "<li><a class='rsswidget' href='$link'>$title</a>{$date}{$summary}{$author}</li>"; } else { echo "<li><a class='rsswidget' href='$link'>$title</a>{$date}{$author}</li>"; } }
Указанный код меняем на:
if ( $link == '' ) { echo "<li>$title{$date}{$summary}{$author}</li>"; } elseif ( $show_summary ) { echo "<li>$title <!--noindex--><a rel='nofollow' target='_blank' class='rsswidget' href='$link'> Читать </a><!--/noindex-->{$date}{$summary}{$author}</li>"; } else { echo "<li>$title <!--noindex--><a rel='nofollow' target='_blank' class='rsswidget' href='$link'> Читать </a><!--/noindex-->{$date}{$author}</li>"; } }
Как можно заметить, ссылку на саму статью мы вынесли в отдельное слово «Читать», ее же мы обернули в
noindex и nofollow
Также рекомендую ссылкам задать
target
со значением
_blank (target='_blank')
чтобы ссылки открывались в новой вкладке, а посетитель оставался на вашем сайте.
Ну, как-то так. Если нужно, то по этому же принципу можете доработать далее самостоятельно. Всем успехов.
Спасибо. Отличное решение.
Пользуйтесь.