RSS
 

Делаем красивые ссылки (Pathauto, Token, Transliteration, Globalredirect)

29 Июн
Comments off

Posted by omega80 at 19:10

ИзображениеПосле установки на свой сайт CMS Drupal задался вопросом создания красивых ссылок, а также правильного указания основного сайта (для поисковых систем). Данная процедура необходима для создания красивых (так называемые человекопонятные урл) ссылок, что в свою очередь очень нравится людям и поисковым системам. Определим какой адрес нашего сайта принят поисковыми системами и склеим адреса сайтов с "www" и без него.

Подготовка

Для реализации задуманного нам понадобятся следующие модули:

  • Pathauto – модуль автоматического создания синонимов ссылок;
  • Token – модуль необходим для работы модуля Pathauto. Создает маркеры, указывающие на определенное значение;
  • Transliteration – модуль перевода созданных русских адресов в латиницу;
  • Global Redirect – модуль склейки адресов. После запуска модуля создания красивых адресов у нас имеются два адреса, и данный модуль склеивает их.

 

Установка Pathauto, Token и Transliteration

В системе Drupal 7 адреса статей создаются по виду www.omega80/node/1 . Для создания красивых ссылок, типа: www.omega80.ru/5.-krasota необходимо установить три модуля:

Pathauto, Token и Transliteration (ссылки на архивы в пункте Подготовка)

Вот пример того, какой файл надо качать:

Изображение

Выбирайте версию “Recommended releases” для Drupal 7.x.

После того, как скачали переходим в меню «модули» (modules) нашего сайта и нажимаем «Установить новый модуль» (Install new module):

Изображение

Нажимаем «Обзор» и находим место, где лежит закаченный ранее модуль «Pathauto». Выделяем его и нажимаем «Открыть», и затем «Install»:

Изображение

В случае успеха установки видим соответствующую надпись:

Изображение

Тоже самое проделываем для модуля «Token». Примечание: из прошлого окна можно выбрать пункт «Добавить другой модуль» (Install another module).

Теперь они у нас находятся в разделе «Модули» в отдельной таблице «другие» (OTHER). Необходимо активировать их путем установки обоих галочек и обязательно необходимо нажать кнопку «Save configuration» для сохранения изменений:

Изображение

Теперь у нас создаются ссылки наших новых страниц по умолчанию следуя правилу content/[node:title], но ссылки будут создаваться на русском (потому что названия наших статей на русском). Что бы создавались ссылки на латинице необходимо установить модуль «Transliteration». Процесс установки идентичен установке «Pathauto» и «Token».

Теперь активируем установленный модуль и проверяем работу системы в целом.

P.S.: У меня не работала автоматическая транслитерация в Drupal 7 по той причине, что после установки «Transliteration» я не активировал пункт «Transliterate prior to creating alias» в настройках модуля «Pathauto». Будьте внимательны:

Изображение

 

Проверка ЧПУ и транслитерации

Создадим тестовую страницу. Нажимаем на «Add content» и выбираем «Basic page». Создадим страницу «О сайте». Укажем тестовый заголовок «О сайте», вобъем небольшое содержимое, поставим галочку в пункте «Создать ссылку в меню», укажем название пункта создаваемого меню (это делаем, что бы сразу была ссылка на пункт «О сайте» в главном меню), и сохраняем:

Изображение

Если вы все сделали правильно – у нас будет следующее:

Изображение

 

Избавляемся от двойных ссылок – установка модуля Global Redirect

Теперь у нас имеются по две ссылки на каждый материал – приведем в порядок путем склеивания адресов модулем «Global Redirect», при помощи которого происходит редирект 301 с родных Drupal’овских ссылок на сгенерированные при помощи «Pathauto». Установим данный модуль как и другие, и активируем его:

Изображение

Теперь убедимся в активированных параметрах модуля:

Изображение

Проверим работу модуля, для чего в адресе нашей страницы «О сайте» http://omega80.ru/o-sayte вместо o-sayte введем node/1. Нажимаем перейти (Enter на клавиатуре) и, если модуль работает, нас снова перекинет на http://omega80.ru/o-sayte ! Отлично, осталось немного.

 

Избавляемся от зеркала.

Дело в том, что www.omega80.ru и omega80.ru для поисковых систем это совсем разные сайты. Для склеивания необходимо определиться в том, какой у вас основной адрес (Внимание! Это необходимо, если сайт у вас уже был, если же сайт новый, то просто выбирайте один из вариантов – в www или без него). Для этого в поисковике наберите свой сайт и посмотрите как выдает результат:

Изображение

Для указания одной ссылки на сайт необходимо редактировать файл с названием «.htaccess», который находится в корне сайта на вашем хостинге. Откройте его любым текстовым редактором (на хостинге: выделить файл и начать кнопку «Редактор исходного текста», далее ничего не меняя нажать кнопку «Edit»):

Изображение

Изображение

Изображение

Найдите следующие строчки (это для меня, т.к. основной адрес у меня без «www»):

# RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]

# RewriteRule ^ http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301]

 

Удалите решетки перед ними, что бы у вас получилось следующее:

Изображение

Теперь обязательно сохраните файл.

Проверяем работу, для чего набираем в адресной строке браузера www.omega80.ru и переходим. В результате нас перекинуло на просто omega80.ru, а это означает что все работает!

 

Дополнение (актуально для новых сайотов): для того, что бы указать поисковику свой основной адрес (например без «www») в файл с названием «.htaccess» необходимо добавить следующие строки (в любое свободное место, лучше в конце):

User-agent: Yandex
Host: omega80.ru

И сохранить!

Теперь поисковик при посещении вашего сайт будет знать какой адрес основной.

 

Вывод и заключение

Благодаря потраченному времени на данную процедуру мы подготовили наш сайт для удобного и правильного восприятия людьми и другими посетителями. Поверьте – затраченное время с лихвой окупится хорошими позициями в поисковых системах. Спасибо за внимание!

Раздел: