DIW#2. Структура ссылок и ЧПУ

09.03.2012

post_DIW2_Permalinks

Сегодня вторая статья из цикла перевода книги «Digging into WordPress» и речь сегодня пойдет о структуре ссылок. Как формируется ссылка в WordPress, как настроить ссылки так, чтобы они нравились и посетителям и поисковым системам, что такое ЧПУ и зачем его применять. 

Постоянные ссылки в WordPress

По умолчанию, постоянные ссылки в WordPress выглядят достаточно убого, примерно так:

http://mydomain.com/?p=12

Почему так происходит? Почему WordPress не предлагает более красивых и правильных вариантов по умолчанию? Потому, что такой вариант не требует никаких дополнительных файлов на сервере или дополнительных настроек. В данном случае «?p=12» это идентификатор записи  или страницы, который уникален. В случае подобной записи движок получает команду на отображение записи с номером 12. И, как лучший друг человека, WordPress будет подчиняться.
На практике, такая запись совершенно не информативна, поэтому чаще всего используют ссылки вроде такой:


 

Использование такой записи заставляет веб-сервер искать каталог с именем «super-big-contest». Но, такого каталога фактически не существует! WordPress не создает физическую структуру каталогов для всех ваших постов и страниц, он просто «подделывает» их, с помощью магии htaccess файла.

htaccess для правильных ссылок

Полное название этого файла — «.htaccess». Оно начинается с точки и не имеет расширения. Некоторые операционные системы могут некорректно работать с такими файлами. Например, в Mac OS, файлы, имя которых начинается с точки, скрыты по умолчанию. Базовая установка WordPress не предусматривает создание этого файла. Тем не менее, именно этот файл отвечает за создание постоянных ссылок. Более подробно о разных вариантах работы с htaccess можно почитать тут.

htaccess файлы применимы только к веб-серверу Apache. Если ваш сайт находится на обычном виртуальном хостинге – высока вероятность того, что там используется именно Apache. Если вы не используете Apache, у вас все равно есть возможность использовать постоянные ссылки, подробнее об этом написано в официальном Кодексе WordPress в разделе PATHINFO

.htaccess файл должен лежать в корневом каталоге вашего сайта, но не нужно сразу же бежать и создавать его, погодите минутку. Во многих серверных средах, WordPress может делать это автоматически, что будет более правильным вариантом (меньше ошибок).

Просто зайдите в Параметры>Постоянные ссылки и выберите любой другой режим отображения, кроме установленного по умолчанию и нажмите кнопку «Сохранить изменения».

Если вы получили такое сообщение, значит все в порядке:

Структура постоянных ссылок изменена.

Это означает, что WordPress создал .htaccess файл и добавил в него правильный код. Если вы не получили этого сообщения, вам необходимо создать этот файл и внести в него изменения вручную. На самом деле, здесь нет ничего страшного. Cоздайте его в корневом каталоге вашего WordPress, а затем вставьте туда следующий код:

# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

Какой стиль постоянных ссылок выбрать?

WordPress позволяет выбрать собственную структуру постоянных ссылок. Несмотря на то, что стиль ссылок это вопрос личного предпочтения – стоит подумать, прежде чем устанавливать что-то.

Если вы планируете очень часто писать в блог, возможно, вам подойдет такая структура — %year%/%monthnum%/%day%/%postname%.

Если же вы планируете писать обзоры чего либо, без привязки к дате сообщения, вам больше подойдет такая структура — %category%/%postname%

Планируете писать редко и не всегда по теме? Тогда вам идеально подойдет вариант — /%postname%

После того, как вы определились с оптимальной структурой постоянных ссылок, старайтесь придерживаться выбранного стиля постоянно. Люди используют их, когда ссылаются на ваш сайт, поэтому их изменение –  очень плохая идея. Современные версии WordPress, как правило, достаточно умны, и при изменении ссылки правильно перенаправляют посетителя, но это не слишком хорошо выглядит в браузерах и очень плохо для SEO.

ЧПУ и SEO-оптимизация

ЧПУ – на сленге веб-мастеров, человеко-понятные урлы. Это ссылки, которые несут осмысленную информацию о странице, на которую они ведут.

К примеру, вы написали пост с названием «57 способов почистить картошку для жарки на сковороде». В случае использования структуры ссылок %postname%, ваш адрес будет примерно таким:

http://url.com/57-sposobov-pochistit-kartoshky-dlya-zharki-na-skovorode

Очень длинный адрес, который, в целом, дает представление о том, что написано в вашей статье. Но, исследования показывают, что длинные адреса страниц не очень хороши в плане SEO-оптимизации вашей страницы. Однако, не все так плохо

После того, как ваша запись была сохранена хотя бы один раз, вы увидите небольшое поле прямо под строкой ввода заголовка статьи.

Там вы можете изменить вашу ссылку так, как вам захочется. Однако, следует помнить, что желательно применять только прописные буквы, цифры, дефисы и нижние подчеркивания. Остальные символы применять не рекомендуется.
Для статьи из примера выше можно применить такие варианты:
Хорошо:

http://site.com/kak-pochistit-kartoshky

Плохо:

http://site.com/57-sposobov-pochistit-kartoshky-dlya-zharki-na-skovorode

Но это еще не самое худшее, бывает и так:

http://www.site.com/boards/filename.php?id=F98ZF4&productId=39222&section=wicked&brand=582&template=532

Несколько советов по постоянным ссылкам:

  • Короткие ссылки это хорошо
  • Придерживайтесь выбранной структуры, не изменяйте ее
  • Убедитесь, что ссылка указывает на содержание записи


Вот и все на сегодня. В следующей статье — о категориях и тегах WordPress.

Удачного дня

,

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

  1. Steel

    Виктор, а теоретически возможно сделать на сайте две структуры чпу? Например, на сайте было %category%/%postname% у старых материалов, а новые будут основаны на структуре %postname%?

    Ответить
  2. GerinG

    Павел, а когда переспам воспринимался радостно?? Надо иметь голову на плечах, ясное дело.
    Плюс — вы хотите сказать, что ссылка типа site.ru/p12&index.html будет для сегодняшнего гугла лучше, чем ЧПУ? Или я не так вас понял?

    Ответить
  3. Павел

    На сегодня пошла информация, что новый алгоритм гугля не радостно воспринимает заспамленные ссылки в ЧПУ. Это когда в url присутствуют все ключевые слова.

    Ответить
  4. akkad

    Спасибо, отличный пост! Сам использую вот это %category%/%postname% — и как раз для обзоров, как Вы написали. Уже менять не буду, поскольку много бэков и постов, но почему в конце добавляется слэш, а не .php например, или совсем ничего? У Вас тоже слэш в конце.

    Ответить
    • Виктор Милашечкин

      php, как и любое другое расширение добавлять — нет особого смысла, никто не обращает внимания, да и попросту ни к чему это. А вот насчет слэша да, мне самому интересно, почему так. Я как то раньше и не задумывался. Теперь узнаю, расскажу в следующей статье

      Ответить
  5. DanielSeredin

    хорошо бы ещё для статей добавлять в конце .html, чтобы была разница между рубриками и статьями. Рубрики mydomain.com/nazvanie а статьи mydomain.ru/nazvanie.html 

    Ответить
    • Виктор Милашечкин

      Я на расширения не обращаю внимания. Да и вообще на URL обычно не смотрю. Влияние расширения на ПС — нулевое, посетителям в принципе тоже без разницы

      Ответить