Настройка детальной страницы news.detail через urlrewrite в 1С-Битрикс
Простым и понятным примером показываю как создать правило обработки адресов в 1С-Битрикс для детальной страницы новостиНастройка детальной страницы news.detail через urlrewrite в 1С-Битрикс
Простым и понятным примером показываю как создать правило обработки адресов в 1С-Битрикс для детальной страницы новости
📅 24 апреля 2023
👁🗨 1590
Задача состояла в том, что по логике список новостей должен был располагаться в разделе /about/news/ с выводом элементов на основании выбранного раздела. Мной были выбраны простые компоненты bitrix:news.list и bitrix:news.detail. Поэтому при переходе на детальную страницу новости мне понадобилось правило для обработки.
Если нет возможности залезть в код, тогда можно открыть правила пройдя по пути https://ваш_домен/bitrix/admin/urlrewrite_list.php
<?
$arUrlRewrite = array (
...
0 =>
array (
'CONDITION' => '#^/about/news/([0-9a-zA-Z_-]+)/.*#', // В файле /about/news/index.php расположен простой компонент bitrix:news.list
'RULE' => 'ELEMENT_CODE=$1', // В настройках инфоблока в поле "URL страницы детального просмотра" установлена запись #SITE_DIR#/about/news/#ELEMENT_CODE#/, поэтому в $1 из скобок в CONDITION у нас будет записываться символьный код элемента
'ID' => 'bitrix:news.detail', // Простой компонент
'PATH' => '/about/news/detail.php', // В файле /about/news/detail.php расположен простой компонент bitrix:news.list
'SORT' => 100,
)
...
);
// В файле /about/news/detail.php
$APPLICATION->IncludeComponent(
'bitrix:news.detail',
'',
Array(
...
'ELEMENT_CODE' => $_REQUEST['ELEMENT_CODE'], // $_REQUEST['ELEMENT_CODE'] будет равен символьному коду элемента на основании правила из файла urlrewrite - 'RULE' => 'ELEMENT_CODE=$1'
...
)
);
?>