Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Помогите с ЧПУ

00 голосов
2
Всем привет!

Есть тривиальная задача вывода новостей, находящихся в корне инфоблока без секций по виду
Новость детально - /news/year/mon/ID-новости.php
Фильтрация новостей - /news/year/ или - /news/year/mon/

Есть к примеру такие правила
Код
array(
      "CONDITION"   =>   "#^/news/about/([0-9]+)/([0-9]+)/([0-9]+)\.php(.)*#",
      "RULE"   =>   "ELEMENT_ID=$3&arrFilter[DATA_SET]=$1&$4",
      "ID"   =>   "bitrix:news.detail",
      "PATH"   =>   "/news/about_detail.php",
   ),
   array(
      "CONDITION"   =>   "#^/news/about/([0-9]+)/([0-9]+)/#",
      "RULE"   =>   "arrFilter[><DATE_ACTIVE_FROM][]=1.$2.$1&arrFilter[><DATE_ACTIVE_FROM][]=31.$2.$1&arrFilter[DATA_SET]=$1",
      "ID"   =>   "bitrix:news.list",
      "PATH"   =>   "/news/index.php",
   ),
   array(
      "CONDITION"   =>   "#^/news/about/([0-9]+)/#",
      "RULE"   =>   "arrFilter[><DATE_ACTIVE_FROM][]=1.01.$1&arrFilter[><DATE_ACTIVE_FROM][]=31.12.$1&arrFilter[DATA_SET]=$1",
      "ID"   =>   "bitrix:news.list",
      "PATH"   =>   "/news/index.php",
   ),
   array(
      "CONDITION"   =>   "#^/news/about/#",
      "RULE"   =>   "",
      "ID"   =>   "bitrix:news.list",
      "PATH"   =>   "/news/index.php",
   ),

Все работает, пока БУС не покапашиться в файле правил urlrewrite.php

Кто подскажет, как сделать красиво? :oops:

P.S. То что 3 правила на 1 файл - это не гут понимаю. Но как быть не могу сообразить.

Часть правила порезалась форумом :( Но думаю понятно
спросил 03 Май, 14 от Enaniel (100 баллов)

2 Ответы

00 голосов
Если по уму - писать свой комплексный компонент, производящий разбор адреса.
ответил 28 Дек, 14 от Pomnep (13,960 баллов)
00 голосов
Свой компонент плох тем, что при появлении нового функционала БУСа придется перелопачивать его снова. Но с другой стороны большое поле деятельности. Вообщем и плюсы и минусы.
Если идей не появиться, то придется свое писать конечно.
ответил 16 Апр, 15 от Enaniel (100 баллов)

Похожие вопросы

0 голосов
2 ответов
0 голосов
5 ответов
спросил 19 Ноя, 13 от perdyn (100 баллов)
0 голосов
3 ответов
спросил 02 Авг, 13 от Feanor007 (420 баллов)
0 голосов
1 ответ
спросил 28 Июль, 15 от аноним
0 голосов
3 ответов
спросил 08 Май, 14 от HuT (100 баллов)