Для любителя "nofollow"

1489
Первая ветка.1.10.6.Представляю хак, для тех кто вспомнил о скрытии ссылок, тогда, когда этих ссылок, ну очень много, что бы прописывать вручную.Пока только для статей. Что бы не парсить регулярки испльзовал библиотеку simple_html_dom, файл здесь.Скачиваете,файл кидаете куда хотите simple_html_dom.php, в ф-ции прописываете путь.
Эту ф-цию добавляем в /components/content/model.php
Код PHP:
  1. public function nofollow($text){
  2.  
  3. require_once('/simple_html_dom.php');
  4. $html = new simple_html_dom( $text);
  5.  
  6. $http = '/^http:\/\//';
  7. $link = $html->find('a');
  8.  
  9. foreach($link as $item){
  10. if( preg_match($http, $item->href)){
  11. $item->class="red";
  12. $item->rel="nofollow";
  13. $item->outertext = '<noindex>'.$item->outertext.'</noindex>';
  14. }
  15. }
  16. return $html;
  17. $html->clear();
  18. unset($html);
  19. }
В файле frontend.php добавляете строку
Код PHP:
  1. $article['content'] = $model->nofollow($article['content']);
, в if ($do=='read'){... где нибудь в конце, например после
Код PHP:
  1. // Выполняем фильтры
  2. $article['content'] = cmsCore::processFilters($article['content']);
Эта строка $item->class="red" в ф-ции для класса внешней ссылке. Хотите цвет, хотите иконку как в google.
Всё, справлюсь с preg_raplace допишу noindex и для блогов.
Векторные иконки в меню | Для любителя "nofollow".Ч2.Плагин.
Комментарии (2)
Lora 19 октября 2015 в 22:37 +1
Поправил ф-цию для noindex. Вместо тог что бы биться с ф-циями следовало читать библиотеку.
Lora 22 октября 2015 в 20:24 +1
Написал вместо хака плагин.