четверг, 31 января 2013 г.

Нюансы установки Sape на Joomla




Эта тема - дополнение темы, рассказывающей как установить код Sape на движок Joomla.
Здесь рассматриваются два таких интересных вопроса, как:
1. установка Sape, при работающих плагинах для экранирования ссылок
2. установка Sape на страницы с кириллическими фрагментами в URL
по мере всплывания новых нюансов тему планируется дополнять

Добавлено через 32 секунды
Установка модуля Sape параллельно с плагинами для экранирования внешних ссылок

О плагинах для экранирования:
Предположим у нас есть ресурс с кучей ссылок на внешние сайты, и мы по всем нам понятным причинам не хотим, чтобы эти ссылки индексировались, тогда мы ставим один из нескольких плагинов. Наиболее популярны в ruсскоязычном сегменте:
Disallow - с ним я не работал, судя по описаниям экранирует все внешние ссылки (которые не обрамлены парным тегом <allow></allow>)
extlinks - пользуюсь долгое время (плагин от Леонида Тушова, экранирует все внешние ссылки, которые не обрамлены парным тегом <noextlinks></noextlinks>), есть возможность редиректа типа http://site?go=, глюков замечено не было, единственный минус на мой взгляд - отсутствие возможности прописать сайт исключение (а это очень актуально для сайтов на кириллице, поскольку url в punikode и без воспринимаются как два разных сайта, т.е. экранирует ссылки на самого себя)
jseoplugin - тот же extlinks, от того же Тушова, с рядом добавленных функций (возможность прописать несколько доменов, которые не нужно экранировать, прописать тайтл, задать параметры индексирования) - на одном из сайтов он у меня глючил, менял местами соседние ссылки, в то время как extlinks на том же сайте работал корректно

О вариантах установки модуля Sape при работающих экранирующих плагинах:
Из описания экранирующих плагинов очевидно, что нужно нам сделать так, чтобы код модуля Sape выводился между парных тегов исключения установленного плагина для экранирования. Какие могут быть решения:
а) Поначалу, я и другие энтузиасты пытались редактировать код модулей Sape (вот мой вариант решения для плагина extlinks и модуля сапы от lucik, а вот пост мучавшегося с плагином Disallow, которому указали на мое решение, но он утверждал, что не помогло). В любом случае понятия "создатель сайта на joomla" и "человек способный разобраться в коде" не всегда тождественны, поэтому способ с редактированием кода чужого модуля не лучшее решение.
б) Если Вы используете плагины jseoplugin или extlinks, то имеет смысл использовать специальный модуль для Sape от их создателя, в котором теги исключения уже прописаны. Настроек, конечно, меньше, чем в модуле от lucik, но это здоровый аскетизм и работает он от этого не хуже.
в) Ну и самое универсальное решение, озарившее меня несколько позже, с минимумом напряжения извилин и трат времени:
ставим плагин Modules Anywhere, создаем модуль для вставки произвольного html, втыкаем в него теги исключения для используемого нами плагина экранирования, а между ними при помощи Modules Anywhere вставляем модуль сапы - дешево и сердито.

И еще один маааленький нюанс использования экранирующих плагинов:
Вы счастливы, что ссылки рекламодателей добавляются на сайт и не экранируются, вы их видите на нужных страницах, однако, система сапы выдает errorы. В чём причина?
Не знаю как обстоит дело с остальными плагинами, но при использовании extlinks причиной может стать функция добавления target="_blank".
Если она включена и ссылка уже имеет target="_blank", то тупо дописывается второй и это воспринимается системой как "изменение ссылки". Казалось бы, достаточно выключить в настройках плагина экранирование при помощи target="_blank" и тогда останется один который шел в комплекте с ссылкой.. Как бы не так! У нас же код модуля заключен в </noextlinks>. А у плагина всего один алгорим исключения, т.е. он встречает тег <noextlinks> и начинает вырезать все noindex и target="_blank" пока не дойдет до </noextlinks>. Т.е. ссылка остается без единого target="_blank", а сапа это тоже воспринимает как изменение ссылки.
Выхода 2: писать дополнительный алгоритм исключения или лезть в код плагина и убирать из алгоритма для обработки исключения функцию вырезания target="_blank".
Дабы не говорили, что я сочиняю насчет target="_blank":


Добавлено через 1 минуту
Нюанс установки модулей Sape на страницы с кириллическими фрагментами в URL
Есть замечательный плагин тегов для джумлы, который образует страницы вида /tag/имя-тега
При использовании модуля сапы от lucik я столкнулся с тем, что он на страницах типа /tag/кириллическое-имя-тега отображал проверочный код сапы, однако не отображал заказанную рекламу..
Почему это происходит и от чего зависит я не знаю и разбираться лень, поскольку модуль для Sape от Тушова подобной проблемы не создает я пользуюсь им.
Если кто опишет решение для модуля от lucik - добавлю его в этот пост.

Комментариев нет:

Отправить комментарий