Перейти к содержимому курса
Контент-менеджер
Мой сертификат

URL и навигация: как устроены адреса страниц

Адрес страницы — это путь к материалу. По нему посетители открывают страницу, а поисковые системы находят и индексируют материал. Этот же адрес может быть в меню, письмах, рекламе и ссылках с других страниц. Если изменить адрес без подготовки, часть переходов перестанет работать.

На этой странице разберем, из чего складываются адреса в 1С-Битрикс: Управление сайтом, чем отличаются обычные адреса от ЧПУ и как настройки адресов связаны с навигацией по сайту.

Из чего складывается адрес страницы

URL — это адрес ресурса в интернете. В работе контент-менеджера важнее всего та часть, которую видно в браузере после домена сайта.

Например, в адресе https://mysite.ru/company/contacts.php домен — mysite.ru, а путь к странице — /company/contacts.php.

В Битрикс адрес зависит от того, с каким типом информации вы работаете: со статической страницей или динамическим материалом.

Статическая страница получает адрес из структуры

Статическая страница хранится как файл в структуре сайта. Поэтому ее адрес зависит от папки и имени файла.

Если в корне сайта создана страница newpage.php, она откроется по адресу:


      mysite.ru/newpage.php
   

Если страница лежит внутри раздела, путь станет длиннее:


      mysite.ru/razdel/newpage.php
   

У раздела есть особенность. Если внутри папки лежит файл index.php, при открытии раздела имя файла обычно не показывается в адресной строке:


      mysite.ru/razdel/
   

Для контент-менеджера важно правило: когда вы создаете раздел или страницу, вы фактически влияете на будущий адрес. Понятное имя папки и файла помогает получить понятную ссылку.

Параметры передают странице дополнительные данные

После пути в адресе могут идти параметры. Они начинаются со знака ? и передают странице дополнительные данные. Несколько параметров разделяются знаком &.

Пример:


      mysite.ru/catalog/?SECTION_ID=1&ELEMENT_ID=2
   

Такой адрес сообщает странице, какой именно элемент нужно показать. Для системы это рабочий вариант, но для посетителя ссылка выглядит технической: по ней трудно понять, что откроется.

Параметры встречаются не только в каталоге. Например, они могут появляться после применения фильтра, при очистке кеша или при включении режима правки.

Адрес Когда можно встретить
mysite.ru/personal/orders/?filter_history=Y Когда включен фильтр в заказах.
mysite.ru/newpage.php?clear_cache=Y После очистки кеша страницы.
mysite.ru/?bitrix_include_areas=Y При включении режима правки сайта.

Якорь ведет к месту внутри страницы

В конце адреса может быть якорь — часть после знака #.


      mysite.ru/newpage.php#example
   

Якорь нужен, когда ссылка должна открыть не только страницу, но и конкретный фрагмент внутри нее. Например, большой документ можно открыть сразу на разделе с условиями доставки.

Установить якорь можно в визуальном редакторе по кнопке с иконкой якоря.

Как формируются адреса динамических материалов

Новости, товары, акции и другие динамические материалы из инфоблоков не являются отдельными файлами в структуре сайта — их выводит компонент. Веб-формы, курсы и другие модули тоже используют компоненты, но здесь мы разбираем общий принцип на инфоблоках.

Чтобы адрес работал правильно, настройки инфоблока и компонента должны совпадать. Если они различаются, ссылка может вести не туда или открываться с ошибкой.

Настройки инфоблока задают шаблоны адресов

В настройках инфоблока могут быть шаблоны адресов для списка, раздела и детальной страницы. В них используются макросы — специальные значения, которые Битрикс подставляет автоматически.

Форму настроек инфоблока можно открыть через административную часть: Контент > Инфоблоки > Типы инфоблоков > Нужный инфоблок.

Посмотрим, из каких частей состоят эти адреса.

Часть адреса Что означает
#SITE_DIR# Корневая папка сайта. Такая запись видна в настройках, а в адресной строке браузера вместо нее будет адрес сайта, например mysite.ru.
catalog Раздел, в котором находятся страницы для вывода материалов.
index.php, list.php, detail.php Страницы, на которых компоненты выводят список, раздел или детальный материал.
ID, SECTION_ID, ELEMENT_ID, SECTION_CODE, ELEMENT_CODE Параметры, которые принимают идентификаторы инфоблока, раздела или элемента.
#IBLOCK_ID#, #SECTION_ID#, #ELEMENT_ID#, #SECTION_CODE#, #ELEMENT_CODE# Макросы. Вместо них Битрикс подставит числовой идентификатор нужного инфоблока, раздела или элемента.

После подстановки значений посетитель увидит в адресной строке уже не макросы, а обычные адреса:


      mysite.ru/catalog/index.php?ID=5
      mysite.ru/catalog/list.php?SECTION_ID=3
      mysite.ru/catalog/detail.php?ELEMENT_ID=248
   

Настройки компонента связывают адрес с данными

Компонент тоже должен понимать, какой параметр из адреса использовать. Если в адресе передается ELEMENT_ID, в настройках компонента должно быть указано, что именно этот параметр отвечает за элемент. Если в адресе передается SECTION_ID, компонент должен использовать его как параметр раздела.

Это особенно важно, если стандартные названия параметров меняют под проект. Например, вместо ELEMENT_ID можно настроить другое имя параметра, но тогда это же имя нужно указать в компоненте.

Чтобы открыть настройки компонента, включите Режим правки, наведите курсор на область компонента и нажмите на шестеренку.

Что такое ЧПУ

Адреса динамических страниц часто делают более понятными. Для этого включают поддержку ЧПУ.

ЧПУ — это человекопонятный URL. Так называют адрес, который читается как нормальный путь по сайту, а не как набор технических параметров.

Сравните два адреса:


      mysite.ru/catalog/?SECTION_ID=8&ELEMENT_ID=4
   

      mysite.ru/catalog/pants/pants-striped-flight/
   

Первый адрес понятен системе, но не объясняет посетителю, что откроется. Второй показывает, что ссылка ведет в каталог, в раздел с брюками и к конкретному товару.

В Битрикс поддержка ЧПУ включается в параметрах компонента.

  1. Включите Режим правки и откройте настройки компонента.
  2. В секции Управление адресами страниц отметьте опцию Включить поддержку ЧПУ.
  3. В поле Раздел замените #SECTION_ID#/ на #SECTION_CODE#/. Теперь ссылка будет строиться по символьному коду раздела, а не по его идентификатору. Если разделов нет, оставьте поле пустым.
  4. В поле Детальная информация измените #SECTION_ID#/#ELEMENT_ID#/ на #SECTION_CODE#/#ELEMENT_CODE#/. Если разделов нет, замените #ELEMENT_ID# на #ELEMENT_CODE#.
  5. Сохраните настройки компонента.
Шаблоны раздела и детальной страницы не должны конфликтовать

Если ссылки на разделы и элементы будут на одном уровне вложенности, компонент не сможет определить, что открывать по ссылке: раздел или элемент.

Если уровень вложенности нужен одинаковый, используйте префиксы. Например, в поле Раздел укажите section-#SECTION_CODE#/, а в поле Детальная информацияdetail-#ELEMENT_CODE#/.

После настройки компонента перейдите в админку в раздел Контент > Инфоблоки > Типы инфоблоков > Нужный инфоблок. В форме инфоблока повторите те же шаблоны адресов.

Убедитесь, что в нужных разделах и элементах инфоблока заполнено поле Символьный код. Для этого в публичной части включите Режим правки, наведите курсор на нужную область и откройте редактирование раздела, товара или другого элемента.

Если символьные коды не заполнены, адреса могут остаться техническими. Поэтому лучше настроить обязательное заполнение символьного кода при создании разделов и элементов. Иначе уже добавленные разделы и элементы придется открывать по одному и вручную транслитерировать названия.

Поле Символьный код может быть скрыто

Форму редактирования можно настроить. Если каких-то полей не хватает или лишние поля мешают работе, измените состав формы в административной части сайта.

Подробнее о настройке — на странице Инфоблоки: настройка форм, полей и изображений.

Чем опасно менять ЧПУ на опубликованном сайте

Адрес — это не только строка в браузере. Он может быть в меню сайта, рекламных объявлениях, поисковой выдаче и ссылках с внешних сайтов.

Если изменить шаблон ЧПУ после публикации, старые ссылки могут перестать работать. Особенно рискованно менять адреса каталога, новостей или разделов, которые уже попали в поиск или рекламу.

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

Вложенные ЧПУ показывают полный путь разделов

Обычные ЧПУ не всегда показывают всю вложенность каталога. Например, товар лежит в подразделе sectionC, который находится внутри sectionA и sectionB.

Адрес может получиться коротким:


      mysite.ru/catalog/sectionC/element/
   

Но иногда нужен полный путь:


      mysite.ru/catalog/sectionA/sectionB/sectionC/element/
   

Для этого используют вложенные ЧПУ. В шаблонах адресов применяется макрос #SECTION_CODE_PATH# — он подставляет полный путь по символьным кодам разделов.

  1. Перейдите в административный раздел и откройте форму редактирования инфоблока.
  2. В полях URL страницы раздела и URL страницы детального просмотра для настройки шаблонов путей используйте переменную #SECTION_CODE_PATH#.

Чтобы завершить настройку, перейдите в публичную часть сайта и откройте настройки компонента, который выводит информацию из измененного инфоблока. В настройках аналогично добавьте макрос #SECTION_CODE_PATH# в шаблоны адресов.

Вложенные ЧПУ полезны, когда структура каталога важна для посетителя и для логики сайта. Например, в большом каталоге одежды путь может показывать тип товара, коллекцию или другую вложенность.

Красивые адреса для фильтров товаров

В каталоге посетитель часто применяет фильтр: выбирает бренд, год, цвет, размер или цену. Без ЧПУ ссылка на результат фильтрации может выглядеть как длинная строка с параметрами:


      mysite.ru/e-store/books/business/?FILTER_P1_MIN=&FILTER_P1_MAX=&FILTER_19_1218211285=Y&set_filter=Y
   

Такую ссылку трудно отправить покупателю или использовать в промо-материале. При поддержке ЧПУ адрес фильтра может выглядеть понятнее:


      mysite.ru/e-store/books/business/filter/year-is-2002/publisher-is-exmo/apply/
   

Для умного фильтра в шаблоне адреса используется блок #SMART_FILTER_PATH#. Он должен быть ограничен специальными частями пути, например /filter/ и /apply/.

Если каталог выведен комплексным компонентом Каталог, отдельные настройки фильтра могут не понадобиться: ЧПУ включают и настраивают в самом компоненте каталога. Если каталог собран из простых компонентов, поддержку ЧПУ нужно настроить во всех связанных компонентах, особенно в компоненте Умный фильтр.

Короткие ссылки

Иногда реальный адрес страницы слишком длинный для письма, презентации, QR-кода или устной передачи. В таких случаях можно создать короткую ссылку: она будет выглядеть как короткий адрес внутри того же домена и перенаправлять посетителя на исходную страницу.

Например, вместо длинного адреса каталога можно использовать ссылку вида:


      mysite.ru/~sale
   

Короткая ссылка не заменяет реальный адрес страницы и не меняет настройки ЧПУ. По сути это перенаправление: посетитель открывает короткий адрес, а система переводит его на нужную страницу. После перехода в адресной строке браузера может отображаться уже реальный адрес.

Создать короткую ссылку можно из публичной части сайта. Откройте нужную страницу и на панели управления нажмите Добавить короткую ссылку.

В форме проверьте поле Ссылка: в нем должен быть адрес страницы, на которую нужно вести посетителя. В поле Короткая ссылка укажите короткий вариант адреса. Система автоматически предложит ссылку из случайных символов со знаком ~ в начале. Этот знак использовать не обязательно, но он помогает отличать короткие ссылки от обычных разделов сайта.

Поле Код HTTP статуса определяет тип перенаправления. Если не уверены в выборе статуса, оставьте значение, которое предложила система, или согласуйте настройку с SEO-специалистом.

  • 301 — постоянное перенаправление. Используйте его, когда старый адрес больше не нужен и посетителя нужно всегда вести на новый адрес. Например, товара больше не будет в продаже, поэтому короткая ссылка ведет на похожую модель.
  • 302 — временное перенаправление. Используйте его, когда страница или товар должны вернуться по старому адресу. Например, товара временно нет в наличии, и короткая ссылка пока ведет на альтернативу.

Если нужно посмотреть или изменить уже созданные ссылки, откройте административный раздел: Настройки > Настройки продукта > Обработка адресов > Короткие ссылки. В списке можно увидеть короткие ссылки, их исходные адреса и статистику использования.

Если короткая ссылка не открывается, обратитесь к администратору: работа этого инструмента зависит от настройки обработки адресов на сайте.

Короткая ссылка не подходит для незаметной замены старого адреса

Если на опубликованном сайте нужно изменить адрес страницы и сохранить переходы со старых ссылок, согласуйте задачу с администратором, разработчиком или SEO-специалистом. Для таких задач важен тип перенаправления и то, как поисковые системы обработают старый адрес.

Как URL связан с навигацией

Навигация — это все, что помогает посетителю перемещаться по сайту и понимать, где он находится. В Битрикс к таким средствам относятся меню, карта сайта и хлебные крошки.

  • Меню ведет посетителя по важным разделам. Если адрес страницы изменился, пункт меню должен вести на новый адрес.
  • Карта сайта показывает разделы и страницы в иерархии. Если структура сайта запутана, карта тоже будет выглядеть запутанной.
  • Хлебные крошки помогают вернуться на уровень выше. Для вложенных разделов она особенно важна: посетитель видит, где находится, и может перейти к родительскому разделу.

Как проверить сайт после изменения адреса

После создания или изменения адреса проверьте страницу, навигацию и переходы со старых ссылок:

  • Страница: новый адрес открывается в публичной части и показывает нужный материал.
  • Навигация: пункт меню, карта сайта и хлебные крошки ведут на правильный адрес.
  • Старые и внешние ссылки: переходы из других страниц, писем и рекламных материалов не ведут на ошибку.
  • Перенаправление: если оно настроено, старый адрес переводит посетителя на нужную страницу, а код ответа соответствует согласованному варианту.
  • Вид адреса: ссылка понятна и не содержит лишних технических параметров.