Аналогично. На ряде сайтов не работает управление комплексными компонентами в режиме правки, при смене некоторых важных элементов вываливаются ошибки типа "Uncaught TypeError: r[p] is null" или похожие. Что это и как с этим бороться, пока не ясно.
|
[QUOTE]Илья Воеводин написал:
array( "CONDITION" => "#^/catalog/phones/(.+)/#", "RULE" => "brand=$1", "ID" => "bitrix:catalog", "PATH" => " /catalog/index.php", ),[/QUOTE] И что это даст? Ну, то есть, на данный момент это даёт всё равно 404... Тем более, что на конце после /phones/ НЕ ОБЯЗАТЕЛЬНО идёт именно бренд, может идти и следующий подраздел. А реальность сложнее, что-то типа: /catalog/electronics/asus/, /catalog/electronics/phones/asus/, /catalog/electronics/phones/smartphones/asus/, и вот этот /asus/ на конце и есть виртуальный - свойство каталога. Это я для примера написал очень упрощённый вариант, чтобы идея была понятна... Список адресов, которые надо обрабатывать составить не трудно, их не так много... Но КАК обработать эти адреса, чтобы каталог не выдал 404? Как сделать, чтобы компонент каталога подумал, что обрабатывает адрес /catalog/phones/filter/asus/, а в браузере был адрес /catalog/phones/asus/? Я уже даже пытался напрямую через .htaccess переопределить: RewriteCond %{REQUEST_URI} ^/catalog/phones/asus/$ RewriteRule ^.*$/catalog/phones/filter/asus/ [L] Всё равно компонент Catalog перехватывает реальный адрес и выдаёт 404. К слову, если в .htaccess прописать: RewriteCond %{REQUEST_URI} ^/catalog/phones/asus/$ RewriteRule ^.*$/index.php [L] то выдаёт контент главной страницы, как и требуется. Такое ощущение, что компонент непобедим... |
|
|
|
|
|
[QUOTE]Илья Воеводин написал:
Настройки - Настройки продукта - Обработка адресов - Правила обработки[/QUOTE] Честно говоря, не очень понимаю, как переопределить несколько конкретных адресов... Существует правило перенаправления на физическую страницу, которая подхватывает параметры: array( "CONDITION" => "#^/catalog/#", "RULE" => "", "ID" => "bitrix:catalog", "PATH" => " /catalog/index.php", ), если я пропишу что-то типа: array( "CONDITION" => "#^/catalog/phones/asus/#", "RULE" => "", "ID" => "", "PATH" => " /catalog/phones/filter/asus/", ), то оно не сработает, всё равно будет обработано компонентом каталога и выведется 404. Хотя, если делаю такое правило: array( "CONDITION" => "#^/catalog/phones/asus/#", "RULE" => "", "ID" => "", "PATH" => " /index.php", ), то подгружается содержимое главной страницы с сохранением УРЛа - как и хотелось бы реализовать для каталожных страниц, но компонент каталога не даёт. Там то реальная страница, а тут виртуальная... Конечно, я плохо понимаю механизм urlrewrite и, наверное, не вижу чего-то очевидного... |
|
|
|
|