У меня есть представления со списком статей, которые имеют 2 поля категорий (термины таксономии) с открытым фильтром в обоих полях.
Когда я что-то ищу, создается следующий URL
изделия /? Field_article_category = 5 & field_article_age = 10.
Я хочу изменить этот URL-адрес на article / category-sports / age-10 , но псевдоним URL не работает, см. https://www.drupal.org/project/drupal/issues/118072.
Что я пробовал до сих пор:
- Пользовательская функция отправки в открытой форме для перенаправления на заданную страницу, по какой-то причине она не работает, умирает при слишком большом количестве перенаправлений.
- создайте собственный PathProcessor, который реализует OutboundPathProcessorInterface, и попытайтесь записать новую логику в processOutbound.
processOutbound ($ path, & $ options = [], запрос $ request = NULL, BubbleableMetadata $ bubbleable_metadata = NULL)
Во 2-й точке есть некоторые проблемы, во-первых, мой $ options ['query'] пуст, а когда я пытаюсь вернуть новый путь 'category-'. $ request-> query-> get ('field_article_category') я буду перенаправлен на поиск / категорию- без номера / имени категории, я думаю, что что-то кеширует это, потому что я пытался добавить случайный и тот же рассказ.
Вопросы:
- почему я не могу изменить путь на «category-». $ request-> query-> get ('field_article_category') в processOutbound.
- есть ли другой подход, который делает это возможным?
Спасибо