Работа с классом \Bitrix\Main\UrlRewriterRuleMaker

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

В современных веб-проектах на 1С-Битрикс часто требуется настраивать  удобные, “человеко-понятные” ссылки (SEF — Search Engine Friendly URLs).  При этом для управления схемой переадресации и парсинга URL  разработчикам доступен специальный функционал ядра Битрикс. Один из  полезных инструментов — класс \Bitrix\Main\UrlRewriterRuleMaker,  расположенный в файле bitrix/modules/main/lib/urlrewriter.php.
Этот код автоматически генерирует 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-Битрикс

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

от 7 дней

от 40 000 рублей

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

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

Аутсорсинг

готов помочь, если нет времени

договорная

Могу взять на себя работы по full-stack

* на основе готовой верстки

Интернет-магазин на готовом решении

от 7 дней

от 40 000 рублей
запуск сайта в максимально короткие сроки

* указана минимальная стоимость. Стоимость выбранной лицензии «1С-Битрикс» оплачивается отдельно.