Правила «хороших» URL

Общие правила

Регистр и язык

Все адреса страниц должны быть в нижнем регистре. Заглавные буквы могут содержать только параметры и идентификаторы каких-либо сущностей.

// Хорошо.
online.sbis.ru/page/tasks
// Плохо.
online.sbis.ru/page/Tasks

Адреса страниц не должны содержать русские буквы.

// Хорошо.
online.sbis.ru/page/business-catalog
// Плохо.

// Страница Business/Catalog.
online.sbis.ru/page/nomenclature?region_left=Бизнес-Каталог&org=m-2a-2d-2

// При копировании ссылка преобразуется к следующему виду.
online.sbis.ru/page/nomenclature?region_left=%D0%91%D0%B8%D0%B7%D0%BD%D0%B5%D1%81-%D0%9A%D0%B0%D1%82%D0%B0%D0%BB%D0%BE%D0%B3&org=m-2a-2d-2

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

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

// Хорошо.

// Раздел Documents в аккордеоне.
online.sbis.ru/page/documents
// Плохо
online.sbis.ru/page/disk
// Хорошо.

// Раздел Companies в аккордеоне:
online.sbis.ru/page/companies
// Плохо
online.sbis.ru/page/contragents

Избегайте сокращенных названий. По URL пользователь должен понимать, о какой странице идет речь.

// Хорошо.

// Карточка контрагента «ВТБ Капитал».
online.sbis.ru/page/company-id
// Плохо.
https://online.sbis.ru/page/cncard?editParams=eyJfZXZlbnRzIjp7fSwiYWtrb3JkaW9uRWxlbWVudCI6ItCe0JrQvtC80L%2FQsNC90LjQuCIsImNvcHkiOmZhbHNlLCJmb3JtYXQiOiIvNzcwMzU4NTc4MC83NzAzMDEwMDEvIzMiLCJoaWVyTW9kZSI6bnVsbCwiaWQiOm51bGwsIm9iaiI6IkNvbnRyYWN0b3IiLCJwayI6ODEzMTE0MCwicmVhZE1ldGhvZCI6IlJlYWRGb3JDYXJkT25seSIsInJlYWRPbmx5IjpmYWxzZX0%3D

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

// Хорошо.

// Раздел Tasks/By Employee.
online.sbis.ru/page/tasks-by-emloyee

// Раздел Documents/Incoming.
online.sbis.ru/page/incoming-documents
// Плохо.

// Раздел Tasks/By Employee.
https://online.sbis.ru/page/fregistry?region_left=registry-ServRec&org=m-2a-2d-2

// Раздел Documents/Incoming.
https://online.sbis.ru/page/fregistry?region_left=registry-RegistryIncoming&org=m-2a-2d-2

Названия страниц должны быть короткие, но если есть необходимость сделать название из нескольких слов, слова должны быть разделены через дефис.

// Хорошо.

// Раздел Tasks/By Employee.
online.sbis.ru/page/tasks-by-emloyee
// Плохо.
online.sbis.ru/page/tasks_by_employee
online.sbis.ru/page/tasks_byemployee

Структура

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

// Хорошо.

// Раздел Motivation.
online.sbis.ru/page/motivation
online.sbis.ru/page/motivation-employees
// Плохо.
online.sbis.ru/page/motivations?region_left=staff_motivation&org=m-2a-2d-2

При переходе на страницу через навигационную панель, на конце URL не должно быть «/».

// Хорошо.

// После перехода в раздел Contacts.
online.sbis.ru/page/contacts
// Плохо.
online.sbis.ru/page/Contacts/

Правила для online.sbis.ru

Страница = Пункт аккордеона, вкладка, элемент мастера

Адрес страницы должен быть сопоставим с ее положением в аккордеоне/ вкладкой / элементом мастера. Например, если две страницы всегда сохраняют свою иерархию даже при изменении структуры аккордеона, их адреса должны строиться по такой же иерархии.

// Хорошо.

// Раздел Documents/Outgoing.
online.sbis.ru/page/documents-outgoing

// Раздел Documents/Outgoing/Letters
online.sbis.ru/page/documents-outgoing-letters
// Хорошо.

// Раздел My Tasks.
online.sbis.ru/page/tasks

// Раздел Tasks/From Me.
online.sbis.ru/page/tasks-from-me

// Раздел Tasks/Sort Tasks.
online.sbis.ru/page/tasks-sort
// Плохо.

// Раздел My Tasks.
online.sbis.ru/page/Tasks-registry-OnMe

// Раздел Tasks/From Me.
online.sbis.ru/page/Tasks-registry-FromMe

// Раздел Tasks/Sort Tasks.
online.sbis.ru/page/Tasks-registry-Unallocated

Глубина URL

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

// Хорошо.

// Корневая страница задач MyTasks.
online.sbis.ru/page/tasks
// Плохо.

// Корневая страница задач MyTasks.
online.sbis.ru/page/Tasks-registry-OnMe

Страница документа

При открытии какого-либо документа в новой вкладке, адрес должен иметь следующую структуру:

online.sbis.ru/<document type>/<document id>

В большинстве случаев, страница реестра с документами этого типа должна иметь похожий адрес, только с буквой «s» на конце.

// Хорошо.

// Разводящая компаний (контрагентов).
online.sbis.ru/page/companies

// Страница компании.
online.sbis.ru/page/company-12345678
// Плохо.

// Разводящая компаний (контрагентов).
online.sbis.ru/page/contragents?region_left=contrMain&org=m-2a-2d-2

// Страница компании.
online.sbis.ru/page/cncard?editParams=eyJfZXZlbnRzIjp7fSwiYWtrb3JkaW9uRWxlbWVudCI6ItCe0Jr