Работа с адресами страниц и ЧПУ #1949

Предисловие

В системе управления существует возможность задать адреса (URL) для различных объектов. Так, например, URL для страницы Вы можете задать в соответствующем поле (“Адрес”) при создании/редактировании страницы. Для иных объектов, каковых в системе множество (товары, категории, новости, статьи, альбомы галерей и пр.), существует такой параметр, как ЧПУ. Разграничим эти два понятия.

Адрес (URL) - стандартизированный способ записи адреса страницы в сети Интернет. Состоит из доменного имени, пути к странице на сайте и имени файла страницы (например: www.megagroup.ru/price. Здесь www.megagroup.ru - доменное имя сайта, /price - путь). Другими словами, URL – это адрес страницы, определяющий ее местонахождение в Интернете.

Адрес в системе управления можно присвоить только создаваемым страницам (например, “Страница с текстом”, “Фотогалерея”, “Форма”, “Новости”). Адрес страницы всегда задается от корня сайта. Для иных объектов существует параметр - ЧПУ.

ЧПУ - (аббревиатура от «человекопонятный урл», где «урл» - жаргонное название URL) - веб-адреса, удобные для восприятия человеком. Концепция ЧПУ предполагает максимально лаконичные и интуитивно понятные адреса, которые показывают естественную для человека логическую структуру данных на сервере, а не её программный интерфейс с модулями и параметрами (например: /catalogue/phones/mobile/brandname/ - каталог товаров, телефоны, мобильные телефоны, телефоны марки "brandname").

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

Шаг 1. Автоматическая генерация

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

По умолчанию в качестве ЧПУ/адреса используется название объекта/страницы. То есть, если при создании, например, товара в магазине Вы не укажете вручную ЧПУ, система автоматически подставит туда название товара. По умолчанию система транслитерирует (то есть переводит в латинские символы) названия перед тем, как вставить их в адрес/ЧПУ (например, по этому правилу товару “Планшет” будет присвоен ЧПУ “planshet”). Однако Вы можете отключить транслитерацию в "Системных настройках" с помощью параметра "Национальные символы в адресах страниц" (тогда товару "Планшет" будет присвоет ЧПУ "планшет", без транслитерации).

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

  • Коротким, то есть сразу от корня (например, http://ваш_сайт.ru/planshet),
  • Или же длинным, то есть с использование полного пути до страницы (например, http://ваш_сайт.ru/magazin/product/planshet).

Обратите внимание!

При автоматической генерации в ЧПУ/адресе могут произойти следующие метаморфозы (независимо от того, включено использование национальных символов):

  • Символ “слеш” будет заменен на дефис.
  • Точки и нижние подчеркивания в середине (не являющиеся крайними) адреса/ЧПУ будут также заменены на один дефис.
  • Если в системе уже существует объект с таким же адресом - система допишет к ЧПУ/адресу порядковый номер.
  • Последовательности из двух и более дефисов будут урезаны до одного.
  • Если в начале или конце адреса есть точки, нижние подчеркивания и дефисы (или их последовательности) - они будут срезаны.
  • Если при отключенном использовании национальных символов наименование товара невозможно транслитерировать (нет латинской транскрипции, например, <ЪЬ>) в качестве ЧПУ/адреса будет использован ID объекта, то есть его уникальный номер.
  • В случае, если на Вашем сайте уже существуют какие-либо объекты без ЧПУ (новости, товары и пр.), адрес которых содержит ID и выглядит примерно следующим образом: http://ваш_сайт.ru/magazin/product/12345 - после пересохранения такого объекта в качестве ЧПУ будет автоматически подставлен путь до объекта и его ID (то есть в строке ЧПУ появится, например, <magazin/product/12345>).

Шаг 2. Ручной ввод

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

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

Так, например, Вы можете при создании или редактировании товара (или любого другого объекта) самостоятельно задать как длинный, так и короткий адрес - как Вам будет угодно, настройка никак не повлияет на вид адреса: Вы можете указать короткий адрес при включенном полном пути или же указать полный путь при включенном коротком адресе - система ничего не допишет и не обрежет в введенных Вами ЧПУ.

Приведем примеры:

  • Установлена настройка “Длинный ЧПУ”. Вы вводите в строку “ЧПУ” короткий адрес - planshet. Адресом страницы данного объекта будет http://ваш_сайт.ru/planshet.
  • Установлена настройка “Короткий ЧПУ”. Вы вводите в строку “ЧПУ” длинный адрес - magazin/product/planshet. Адресом страницы данного объекта будет http://ваш_сайт.ru/magazin/product/planshet.

Грубо говоря, вручную Вы можете указывать любые адреса для объектов.

Обратите внимание!

При ручном вводе Вы можете указывать (ничего обрезаться и заменяться - как при автоматической генерации - не будет):

  • Символы “слеш”, точки, нижние подчеркивания и дефисы в ЧПУ/адресах,
  • Последовательности из данных символов, в том числе из дефисов.

При ручном вводе настройка действует настройка использования национальных символов в адресах страниц (то есть, если у Вас отключена поддержка национальных символов, даже если Вы вручную введете адрес на кириллице, система его транслитерирует; если же поддержка алфавитов включена - адрес останется как есть).

При попытке стереть ЧПУ/адрес у объекта и сохранить изменения - система автоматически использует имя объекта и подставит его в ЧПУ/адрес (транслитерируя или нет - в зависимости от описанной выше настройки).

При попытке указать ЧПУ/адрес, уже присвоенный какому-либо объекту или странице, система не позволит этого сделать, оповестив Вас о существовании другого объекта с таким ЧПУ/адресом. Однако, стоит отметить, что, если Вы укажите дублирующий ЧПУ, но в другом регистре (или при отключенных национальных символах на кириллице) - система сохранит такой ЧПУ, обработает в соответствии с правилами и допишет порядковый номер.

Шаг 3. Импорт товаров и категорий

Отдельно стоило бы затронуть импорт товаров и категорий в Магазине 2.0.

Тут правила присвоения работают по аналогичному принципу:

  • Если Вы не указали в файле импорта ЧПУ для объекта - он будет взят из названия ( и обработан по общим правилам).
  • Если Вы указали длинный ЧПУ с полным путем - будет использован именно он, независимо от настройки CMS.
  • Аналогично с коротким адресом - Вы можете указать длинный и он будет импортирован именно таким.
  • ЧПУ никогда не затирается у уже существующих товаров и категорий, какой бы режим Вы не указали или как бы Вы не заполняли ячейки.

Шаг 4. Общие особенности

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

  • Адрес страницы может содержать следующие символы: дефис, арабские цифры от «0» до «9», латинские буквы от «a» до «z», точку («.»), слеш («/»), символ нижнего подчеркивания («_»). Кроме того, Вы можете включить поддержку символов отличных от латинского алфавитов (кириллического, китайского и т.д.), для этого включите поддержку национальных символов в "Системных настройках". Все недопустимые символы будут заменены на дефис.
  • Адрес страницы не может быть однобуквенным(Например "d", "f" и.т.д). Все однобуквенный URL зарезервированы как системные. Адреса вида "x/page" будут заменяться при сохранении на "x-page".
  • Кириллические символы при отключенной поддержке национальных символов будут транслитерироваться в латинские. При включенной поддержке, соответственно, кириллические символы будут сохраняться в адресах/ЧПУ.
  • Прописные (большие) буквы будут заменяться строчными (маленькими).
  • Максимально допустимое количество символов для ЧПУ объектов - 210 символов, для страниц - 90 символов  (все что больше - будет обрезано)

Шаг 5. Где редактируются адреса и ЧПУ

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

На скриншотах ниже мы покажем, как добраться до настроек ЧПУ и адресов:

  • ЧПУ (на примере товара): окно добавления/редактирования товара, вкладка "ЧПУ", поле "ЧПУ" (аналогичным образом отредактировать адрес на вкладке "ЧПУ" можно в окнах добавления/редактирования статей, новостей, категорий, альбомов фотогалерей и т.д.).

phpbtyavU

  • Адреса страниц - окно добавления/редактирования страницы, поле "Адрес страницы":

php3Xijjw

Обратите внимание!

  • Во избежание создания страниц с некорректными адресами, ломающими структуру объектов в системе управления, запрещены некоторые маски адресов. В частности, нельзя создавать адреса вида "ваш_сайт.ru/product", "ваш_сайт.ru/folder" и прочие адреса в формате "ваш_сайт.ru/некорректное_значение", оканчивающиеся на gallery, vendor, album, photo, article, article_post, news_post, .png, .jpg, .jpeg, .svg, .tiff, .bmp, .gif, robots.txt, favicon.ico.
  • При изменении адреса или ЧПУ (то есть при редактировании уже существующей страницы) автоматически будет создан редирект со старого адреса на новый. Чтобы этот редирект перестал работать, снова создайте страницу со старым адресом и удалите ее. Аналогично при редактировании ЧПУ товаров, категорий и пр.

Пример: В системе есть страница с адресом "telefon". Вы изменяете адрес страницы на "phone". Система создаст редирект с "telefon" на "phone", и каждый раз, когда посетитель сайта будет пытаться перейти к странице "site.ru/telefon", он будет перенаправлен на "site.ru/phone". Чтобы этого не происходило - нужно создать новую страницу с адресом "telefon" и удалить ее, редирект работать перестанет.

Была ли статья вам полезна?
Укажите, пожалуйста, почему?
Комментарий