Deen812. Битрикс чпу для каталога


Настройка ЧПУ для каталога

Чтобы настроить ЧПУ для каталога в «Аспро: Маркет», необходимо изменить параметры компонента каталога и синхронизировать их с параметрами инфоблока каталога.

Настройка параметров компонента каталога

1. Переключитесь в режим правки и зайдите в настройки любого компонента каталога.

2. Перейдите в пункт меню «Управление ссылками», отредактируйте поле «Детальная информация», задав нужные параметры для отображения ссылок.

ELEMENT_ID — если вы хотите, чтобы в ссылках отображался ID товара: /catalog/dushevye_kabiny/254 (ID товара)

ELEMENT_CODE — для отображения символьного кода товара: catalog/santekhnika/dushevye_kabiny/victoria_f-217 (код товара)

Настройка инфоблока каталога

1. В административной части сайта перейдите в настройки каталога товаров:

Контент → Инфоблоки →Типы инфоблоков → Каталог → Каталог товаров

2. Проверьте, совпадают ли коды, заданные в компоненте каталога, с кодами в строках URL страницы инфоблока, URL страницы раздела и URL страницы детального просмотра.

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

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

Например: SECTION_CODE – символьный код родительского раздела SECTION_ID – ID родительского раздела SECTION_CODE_PATH – путь из символьных кодов раздела.

Внимание! Если вы используете параметр SECTION_CODE или SECTION_CODE_PATH, убедитесь, что символьные коды разделов уникальны.  При совпадении символьных кодов система не поймет, какой раздел ей открыть, и не отобразит данные. 

Для этого перейдите на вкладку «Поля разделов» в настройках инфоблока и отметьте пункты «Если код задан, то проверять на уникальность» и «Транслитерировать из названия при добавлении раздела».  

Эти же параметры выставляем на вкладке «Поля», если задаем символьный код элемента (ELEMENT_CODE).

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

#SECTION_CODE_PATH#/#ELEMENT_CODE#/ А код в инфоблоке будет выглядеть так: #SITE_DIR#catalog/#SECTION_CODE_PATH#/#ELEMENT_CODE#/ 3. Сохраняем изменения и проверяем результат на сайте: 

aspro.ru

Как убрать названия разделов в ЧПУ для каталога?

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

Решение

 Варианты решения:
  1. Доработать комплексный компонент таким образом, чтобы названия разделов не выводились. В итоге вы получите ссылку вида /catalog/tovar123.

    Минус этого подхода в том, что компонент каталога станет необновляемым: вам будут недоступны новые функции компонента, будут накапливаться ошибки и сбои в работе каталога. Если вы собираетесь вносить изменения в код шаблона 

  2. Добавить произвольный символьный код в адрес страницы (например, id). Тогда код адреса страницы товара в каталоге будет выглядеть следующим образом:

    id/#ELEMENT_ID/

    Ссылки на конкретные товары примут вид /catalog/id/tovar123 независимо от раздела, в котором они находятся. Соответственно, изменение структуры каталога не скажется на поисковой выдаче товара.

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

Аналогичные изменения необходимо внести в настройки инфоблока каталога для того, чтобы синхронизировать параметры ЧПУ. Для этого перейдите в настройки каталога товаров в административной части сайта:

Контент → Инфоблоки →Типы инфоблоков → Каталог → Каталог товаров

Внесите изменения в поле «URL страницы детального просмотра».

Код адреса страницы будет выглядеть следующим образом:

#SITE_DIR#catalog/id/#ELEMENT_ID#/

Сохраните изменения.

В параметрах компонента «Каталог» отключите строгую проверку раздела:

Сохраните изменения.

aspro.ru

Deen812: Bitrix , Каталог, ЧПУ

Как то надо было создать каталог товаров на одном сайте. Сайт крутился на Bitrix./portfolio/ - выводим список разделов ПОРТФОЛИО/portfolio/xxx/ где xxx - название раздела. Вывод элементов раздела/portfolio/xxx/yyy  - где yyy - элемент раздела. Детальный просмотр элемента.

Создаем вот такие файлы

index.php - вывод разделовlist.php - вывод элементов разделаdetail.php - детальной просмотр элемента

На странице index.php добавляем компонент bitrix:catalog.section.list . Настраиваем в компоненте ЧПУ

Открываем страницу portfolio/list.php. Добавляем компонент bitrix:catalog.section

Также настраиваем ЧПУ компонента

Открываем страницу portfolio/detail.php. Добавляем компонент bitrix:catalog.element. Тут ничего касающегося ЧПУ не делаем.

Сейчас у нас ничего не заработает. Нужно настроить правила!

Идем в админку Настройки ---- Обработка адресов -- правила обработки

Добавляем то что на картинке.

#^/catalog/([a-zA-Z0-9_-]+)/#

/catalog/detail.php

ELEMENT_CODE=$1

Все, теперь должно работать.

И еще, в хлебных крошках может вместо portfolio/xxx быть такая ссылка portfolio/list?SECTION_CODE=xxx. ЧТобы этого не было надо настроить сам инфоблок.

Кстати, при включенном ЧПУ теряются POST запросы.  Чтобы хотябы "захватить"  POST параметры и , например, добавить в сессию, надо указать action

<form action="/portfolio/list.php?SECTION_CODE=<?=$_REQUEST['SECTION_CODE']?>" method="post">

deen812.blogspot.com


Prostoy-Site | Все права защищены © 2018 | Карта сайта