Для создания уникальных страниц в комплексном компоненте Bitrix необходимо выполнить следующие шаги:
1. Разработка шаблона страницы:
- Создайте новый шаблон страницы в папке /bitrix/templates/ вашего сайта. Например, содайте папку template_name и в ней файл template.php.
- Скопируйте все необходимые файлы для отображения страницы в эту папку, например, header.php, footer.php и т.д.
- Отредактируйте файл template.php, чтобы он отображал только содержимое нужной вам страницы.
2. Создание и настройка компонента:
- Создайте новый комплексный компонент на странице Административный раздел -> Контент -> Компоненты.
- Укажите имя компонента, например, my:unique_page.
- Включите навигацию для комплексного компонента для возможности создания уникальных страниц. Для этого укажите параметр is_include_component_chains в .parameters.php компонента:
"PARAMETERS" => array( "SEF_MODE" => "Y", "SEF_FOLDER" => "/news/", "SEF_URL_TEMPLATES" => array( "list" => "", "detail" => "#ELEMENT_ID#/", ), "IS_INCLUDE_COMPONENT_CHAINS" => "Y", )
- Укажите необходимые дополнительные параметры в .parameters.php компонента.
- Определите обработку шаблона в .will_work_with_template.php компонента, например:
if ($this->StartResultCache()) { $this->IncludeComponentTemplate(); }
3. Создание файлов страниц:
- Создайте папку для страницы в /bitrix/templates/template_name/components/my/unique_page/.
- Для каждой уникальной страницы создайте файл с именем соответствующим ее идентификатору, например, для страницы с идентификатором 42 создайте файл 42.php.
- В каждом файле разместите необходимый контент для отображения страницы.
4. Настройка ЧПУ:
- Для настройки ЧПУ укажите страницы компонента в .htaccess. Например:
RewriteRule ^news/([0-9]+)/$ /bitrix/services/my/unique_page/42.php [L]
- Данное правило перенаправит запросы на страницу с идентификатором 42 на файл 42.php в компоненте my:unique_page.
Теперь при открытии страницы с ЧПУ /news/42/ будет отображаться файл 42.php, а при открытии страницы с ЧПУ /news/43/ будет отображаться файл 43.php.