URL в системе ExpressionEngine

Страницы (шаблоны) организованы в группы шаблонов. Для того чтобы обратится к шаблону в пределах группы шаблонов, вы должны использовать следующую структуру URL:

http://www.example.com/index.php/template_group/template/

Например: Если вы хотите обратиться к шаблону "archives" в пределах группы шаблонов "site", то вам необходимо использовать следующий URL:

http://www.example.com/index.php/site/archives/

Концепция

Основная задача состояла в том, чтобы сделать URL ExpressionEngine дружественными для поисковых серверов, создавая структуру URL похожей на традиционный статический сайт. Чтобы добиться этого, из URL были исключены строки запросов.

Большинство динамических систем публикации используют в своих URL строки запросов. Поэтому их URL выглядят следующим образом:

http://www.example.com/index.php?id=2&page=1

Обратили внимание на вопросительный знак и амперсанд? Это часть "строки запроса". Она дает возможность динамическим системам выбрать и отображать определенную информацию. Строки запроса, однако, не нравятся поисковым серверам, которые ограничивают количество динамической информации, которую они каталогизируют. Поэтому, строки запросов были полностью устранены в ExpressionEngine. Вместо этого его URL управляется сегментами, например:

http://www.example.com/index.php/site/archives/

Так как группы шаблонов и шаблоны можно называть произвольно, и так как индексная (главная) страница вашего сайта может быть переименована или даже удалена полностью,то структура URL для сайтов ExpressionEngine может казаться полностью статической. Например: Вы можете переименовать вашу страницу "index.php" в "blog", затем переименовать группу шаблонов "weblog" на "joe". Тогда к вашему разделу можно будет обратиться следующим образом:

http://www.example.com/blog/joe/

Просмотр вашего сайта

Поскольку на вашем сайте фактически нет физических страниц, то URL, который вы используете, будет определять то, что вы увидите на вашем сайте. В самом простом случае, вы можете обратиться к страницам на вашем сайте, используя эту формулу URL:

http://www.example.com/index.php/template_group/template/

Обратите внимание, что группа шаблонов и шаблон содержатся в URL. Например: Допустим, вы создали группу шаблонов, с названием "blog", и в этой группе создали шаблон с названием "about_me". Чтобы обратиться к этой странице, вам необходимо использовать следующий URL:

http://www.example.com/index.php/blog/about_me/

Если вы указали в URL только название группы шаблонов (и не указали название шаблона), то EE предполагает, что вы хотите отобразить шаблон "index" для данной группы:

http://www.example.com/index.php/blog/

Приведенный выше URL работает аналогично следующему:

http://www.example.com/index.php/blog/index/

Важное замечание: Лучшее, если вы всегда указываете название группы шаблонов, при обращении к контенту.

Записи и другие вещи

Но это далеко не все. На вашем сайте вы будете часто иметь дело с URL, которые указывают на определенные записи раздела, категорию, или другие вещи. Например, у вас может быть такой URL:

http://www.example.com/index.php/blog/comments/147/

Этот URL сообщает EE, что нужно отображать запись раздела с номером 147, используя шаблон "comments" в группе шаблонов "blog". Так, EE узнает, что, где и как необходимо отобразить. Также вы можете использовать "URL заголовок", для указания определенной записи вместо ее номера. URL заголовки записей определяются при создании записей. Так, URL мог бы быть таким:

http://www.example.com/index.php/blog/comments/my_url_title/

Снова, "blog" это группа шаблонов, "comments" - шаблон, и в данном случае "my_url_title" это URL заголовок для записи, которая будет отображена. Точно так же вы могли бы отобразить единственную категорию в ваших архивах:

http://www.example.com/index.php/blog/archives/C13/

В этом случае, URL указывает, что необходимо отобразить категорию с идентификатором ID "13", используя шаблон "archives" в группе шаблонов "blog".

Строки запроса

Некоторые веб сервера — обычно на основе Windows — до сих пор имеют проблемы с установкой ExpressionEngine по умолчанию, которая не использует строки запроса. В этом случае, вы можете указать системе "Использовать в URL строки запросов" (смотрите Admin > Настройки вывода и отладки на странице панели управления).

Когда эта опция включена, URL, выводимые ExpressionEngine немного изменяются, но все еще намного лучше читаются и дружественны для поисковых серверов, чем URL, которые выводят большинство динамических систем. Когда включена опция "Использовать в URL строки запросов", URL ExpressionEngine могут выглядеть следующим образом:

http://www.example.com/index.php?/site/archives/

Обратите внимание, что URL выглядят почти так же, как при обычной установке, только с добавлением вопросительного знака.

В некоторых случаях включение одной опции "Использовать в URL строки запросов" будет недостаточно. Если URL не работают даже с этой настройкой, то вам необходимо открыть файл index.php вашего главного сайта. В начале файла вы увидите переменную $qtype с тремя возможными параметрами. Пробуйте изменить значение переменной на "2" (или возможно на "1").

Наверх страницы