@vimbatu

Как правильно написать регулярное выражение для urlrewrite.php в битрикс?

Добрый день.

Помогите правильно написать регулярку для подмены url'ов через urlrewrite.php. Вариант с настройкой через .htaccess в данном случае не подходит по SEO соображениям.

Суть задачи - есть набор урлов, которые создает фильтр на сайте, вида:

/filter/tsvet-chernyy/available-yes/model-iphone_13-or-iphone_xs_max-or-iphone_12_pro/obem_pamyati-256_gb
и так может быть много приписок в зависимости от выбранных фильтров. После слеша идет название свойства (/model) дальше тире и после перечисление выбранных значений через -or-.

По техническим соображениям эту черточку пришлось заменить на =, то есть теперь фильтр создает адреса вида:

/filter/tsvet=chernyy/available=yes/model=iphone_13=or=iphone_xs_max=or=iphone_12_pro/obem_pamyati=256_gb

Проблема в том, что предыдущие варианты адресов с черточкой проиндексированы поисковиками, и нужно сделать 301 редирект на новые адреса, чтобы ничего не потерялось из поиска.

Как написать правильную регулярку, чтобы, при условии наличия в адресе названия свойства с тире (любого) или перечисления значений свойства через -or- (в любом количестве), он менял их на то же самое с равно вместо тире? Просто менять тире на равно нельзя, потому что в адресе могут быть другие тире, например в названии или значении свойства, или в дополнительных GET параметрах.

Спасибо.
  • Вопрос задан
  • 134 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Ведисофт Екатеринбург
от 25 000 ₽
YCLIENTS Москва
от 200 000 до 350 000 ₽
от 300 000 до 500 000 ₽
08 мая 2024, в 10:50
1000 руб./за проект
08 мая 2024, в 10:40
1500 руб./в час
08 мая 2024, в 10:15
1000 руб./за проект