Форум 1С-Битрикс

\Bitrix\Main\UrlRewriterRuleMaker: создание правил SEF в 1С-Битрикс D7

Внимание! Работает режим премодерации. Все сообщения публикуются после проверки!
Страницы: 1
Ответить
RSS
\Bitrix\Main\UrlRewriterRuleMaker: создание правил SEF в 1С-Битрикс D7
Руководство по работе с классом \Bitrix\Main\UrlRewriterRuleMaker для настройки SEF-переадресаций в Битрикс D7

В современных веб-проектах на 1С-Битрикс часто требуется настраивать  удобные, “человеко-понятные” ссылки (SEF — Search Engine Friendly URLs).  При этом для управления схемой переадресации и парсинга URL  разработчикам доступен специальный функционал ядра Битрикс. Один из  полезных инструментов — класс \Bitrix\Main\UrlRewriterRuleMaker,  расположенный в файле bitrix/modules/main/lib/urlrewriter.php.
Изменено: Валерий Макеев - 29.09.2025 15:17:44
Этот код автоматически генерирует SEF-правило для ЧПУ вида /products/категория/ид/доп-путь/, чтобы Битрикс корректно разбирал URL и передавал параметры в компонент.
Код
<?php
use Bitrix\Main\UrlRewriterRuleMaker;

// Инициализируем генератор правил ЧПУ
$maker = new UrlRewriterRuleMaker();
$maker->process('/products/#SECTION_CODE#/#ELEMENT_ID#/#PARAMS_PATH#/');

// Получаем сгенерированные правило и условие
$condition = $maker->getCondition(); // Регулярное выражение для сопоставления URL
$rule      = $maker->getRule();      // Как извлечь параметры из URL

// Формируем массив для urlrewrite.php
$arUrlRewrite[] = [
    'CONDITION' => $condition,
    'RULE'      => $rule,
    'ID'        => '',
    'PATH'      => '/products/index.php',
];

// Пример: при заходе на /products/electronics/451/specs/details/
// Будут переданы: SECTION_CODE=electronics, ELEMENT_ID=451, PARAMS_PATH=specs/details/
Страницы: 1
Ответить
Форма ответов
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить картинки
 

Стоимость услуг по разработке и сопровождению сайтов на 1C-Битрикс

Участие в проекте

привлечение в проект на part-time основе

от 30 000 рублей / неделя

Возможно участие в проекте на ежедневной основе, как разработчика. Занятость - до 20 часов в неделю
Минимальный срок - одна неделя.

* сумма фиксированная

Техническая поддержка

сайтов на CMS 1C-Битрикс

от 20 000 рублей/месяц
Оптимизация производительности действующих интернет-проектов, наполнение и сопровождение, полная техническая поддержка и продвижение в поисковых сетях.

* стоимость зависит от объема и сложности выполняемых работ

Разработка корпоративного сайта

от 7 дней

от 40 000 рублей

Разработка сайта без системы оплаты заказов через корзину

* стоимость зависит от наличия верстки, использования готового решения и т.д.