Начну из далека.
Этот блог работает на MODX Revo
У меня в блоге много внешних ссылок (ссылаюсь на материалы в сети, а так же есть немного рекламных ссылок), это всё сильно понизило мой ТИЦ.
Решил автоматизировать процесс закрытия внешних ссылок атрибутом nofollow
и тэгом noindex
, а так же добавлять атрибут _blank
.
Что для этого пришлось сделать:
В закладке «Элементы», в разделе «Плагины», создал новый плагин и назвал его noindex.
Тут название не важно, называем как угодно.
В «Код плагина (php):» вставляем следующий код:
<?php if ($modx->event->name == 'OnWebPagePrerender') { $content = $output = $modx->resource->_output; // Собираем все ссылки на странице, по шаблону, в массив $matches preg_match_all( "/<a [^>]*?href=[\"\'](.*?)[\"\'][^>]*>.*?<\/a>/im", $content, $matches ); if (!empty($matches[0])) { foreach ($matches[0] as $key => $tag) { // Добавляем атрибут "nofollow" в начало тега "а" $new_tag = preg_replace("/^<a/i", '<a rel="nofollow"', $tag); // Добавляем атрибут "_blank" в начало тега "а" //$new_tag = str_replace('<a','<a target="_blank"',$new_tag); // Добавляем тэг "<!--/noindex-->" после тега "а" //$new_tag = str_replace('</a>','</a><!--/noindex-->',$new_tag); // Добавляем атрибут "<!--noindex-->" перед тегом "а" //$new_tag = str_replace('<a','<!--noindex--><a',$new_tag); $content = str_replace($tag, $new_tag, $content); } // Устанавливаем новый контент для вывода документа $output = $modx->resource->_output = $content; } }
Тут я написал комментарии, должно быть понятно, что и для чего делается.
У плагина, в закладке «Системные события», ставим галочку напротив пункта OnWebPagePrerender
Жмем «Сохранить»
Вот и всё. Теперь наши ссылки приобрели такой вид:
<a href="ТутАдресСайта" rel="nofollow" target="_blank">ТутАдресСайта</a>
MODX Revo: Закрываем внешние ссылки
Вы должны авторизоваться, чтобы оставлять комментарии.
Комментарии ()