Разделы
Последние статьи
- Алгоритм Минусинск или прощайте ссылки...
Новость о скором введении нового алгоритма - Минусинска
- Правильное seo. А было ли?
"Синдром отличника" заставляет многих сеошников мучаться извечным вопросом - а какое оно "правильное seo"? Спрашивается, зачем?
Устраняем дубликаты страниц сайта на CMS MODx
Но даже версия 1.0.5 при использовании дружественных URL создает дубликаты страниц. То есть у одной веб-страницы появляется несколько адресов: 1. http://site.ru/ Я перечислил некоторые возможные дубли главной страницы MODx сайта, которая в дереве документов (панель администратора) имеет ID=1. Варианты 1 и 2 имеют значение только для главной страницы сайта, для которой в MODx мы ввели псевдоним index. Третий адрес соответствует ID страницы в MODx. Четвертый адрес, скорее всего, появится, если автоматически добавляется суффикс для дружественных URL (например .html). Пятый адрес, сколько знаю, не генерируется уже в версии 1.0.5 (актуально для более ранних версий MODx). Недавно у меня Яндекс начал индексировать дубликаты страниц. Техподдержка Яндекс мне ответила, что если будут обнаружены на сайте веб-страницы с одинаковым контентом, то робот просто склеит их, и в поиске будет отображаться только одна страница. Также мне заявили, что на позиции в поисковой выдаче сайта такая ситуация никак не влияет. Может так совпало, но моя главная страница, после того как Яндекс проиндексировал ее дубликат (вариант №3) сильно потеряла свои позиции в поиске. В любом случае, наличие дубликатов страниц ничего хорошего для сайта не несет. Подобная ситуация, как минимум, отрицательно влияет на скорость индексирования вашего сайта. Вместо того, чтобы загружать новые страницы, поисковый робот будет заниматься индексированием дубликатов старых страниц. Как избавиться от дубликатов страниц в CMS MODx? В интернете предлагаются различные варианты решения этой проблемы. Но самый простой и надежный способ, не поверите, давно уже придуман. Нужно лишь установить специальный плагин SEO Strict URLs 1.0.1. Берем его мы конечно с официального сайта CMS MODx. Этот плагин использует редирект с 301 кодом ответа, переадресовывает пользователей и поисковых роботов на один единственный URL (основной). Заходим, короче на официальную страницу плагина и жмем кнопку скачать (у меня в браузере она выглядит как пустой прямоугольник в рамке). Загрузится страница с PHP кодом. Его мы копируем. Затем идем в панель администратора MODx – Элементы – Управление элементами – Плагины. Создаем новый плагин. Указываем название и краткое описание плагина (для себя). И в окно «Код плагина (php)» вставляем полученный PHP код. Затем переходим на вкладку Конфигурация. И в окно под названием «Конфигурация плагина» вставляем строку: &editDocLinks=Edit document links;int;1 &makeFolders=Rewrite containers as folders;int;0 &emptyFolders=Check for empty container when rewriting;int;0 &override=Enable manual overrides;int;0 &overrideTV=Override TV name;string;seoOverride Также можно на этой вкладке указать категорию, в которую плагин будет помещен. Эти категории нужны для классификации всех встроенных в MODx плагинов (для вашего удобства и только). Пробежимся вкратце по параметрам плагина. Я в них, честно говоря, не великий специалист. Edit document links (редактировать ссылки документа) – разрешено. Можно запретить плагину редактировать адреса страниц, выставив ноль вместо единицы. Но не стоит этого делать. При включенном параметре все динамические ссылки будут проверены и изменены на единственно правильные. Например, ссылки на главную страницу вида http://site.com/index.htm будут заменены на строгое http://site.com/. Rewrite containers as folders (перезаписывать контейнеры как папки) – я отключил. Иначе к URL всех страниц, имеющих дочерние ресурсы, будет добавлен символ слеш «/» в конце. Check for empty container when rewriting (проверить пустой контейнер при перезаписи) – отключено. Enable manual overrides (включить ручной отмен) – отключено. Чтобы подключать к конкретной странице ручные значения из TV параметра «seoOverride» потребуется выставить здесь единицу. Override TV name (имя TV параметра для ручного отмена) – по умолчанию seoOverride. Затем переходим на вкладку «Системные события». И проставляем галочки напротив строк OnWebPageInit и OnWebPagePrerender. Сохраняем плагин. Теперь, как вы уже догадались, нам нужно создать новый TV параметр. Идем Управление элементами – Параметры (TV) – Новый параметр (TV). Имя TV параметра по умолчанию у нас seoOverride. Заголовок и описание TV параметра указываете, какие хотите. Тип ввода: DropDown List Menu. В поле возможные значения вставляем: Disabled==-1||Base Name==0||Append Extension==1||Folder==2 Значение по умолчанию: -1 (минус один). Делаем этот TV параметр доступным для всех шаблонов. Сохраняем. Для каждого шаблона, благодаря TV параметру seoOverride мы подключили дополнительные настройки для плагина SEO Strict URLs. Они нужны для ручного индивидуального редактирования адресов страниц. Значения: Disabled – заблокировано ручное изменение URL для данной страницы. Base Name – указывать в адресе страницы только псевдоним без суффикса. Например, псевдоним страницы у нас sitemap.xml. Если включено автоматическое добавление суффикса, то мы получим адрес этой страницы – http://sitemap.xml.html. Назначив же для этого документа значение Base Name, мы отключим суффикс и получим адрес страницы http://sitemap.xml. Append Extension – добавить расширение. Разрешить MODx добавлять автоматически суффикс (.html или .htm). Противоположно предыдущему параметру. Folder – выделять страницу как папку. Добавляет слеш в конце адреса веб-страницы. То есть было http://site.com/page, а станет http://site.com/page/ Лично у меня для всех страниц стоит «Disabled». Теперь у нас все настроено. Плагин SEO Strict URLs 1.0.1 работает и проблема с дублями страниц в CMS MODx решена раз и навсегда. Но есть еще дубли, связанные с определением поисковиком основного зеркала сайта. Если ресурс доступен по двум адресам – с www и без оного, то это тоже дубли. Выше описанный плагин проблему зеркал не решает. Но тут нам поможет стандартный .htaccess, идущий в комплекте с MODx. Нам нужно раз документировать три строки (удалить символ #), идущие за строчкой: # Rewrite domain.com -> www.domain.com -- used with SEO Strict URLs plugin И заменить example.com на свой домен. Для моего сайта получится: RewriteCond %{HTTP_HOST} . В результате имеем перенаправление 301 на адрес с www. Он станет основным и единственным зеркалом нашего сайта. Добавить комментарийПоля отмеченные * обязательны. HTML тэги отключены.
|