Рейтинг:1

Процессор входящего пути не обрабатывает

флаг cn

Я пытаюсь использовать процессор входящего пути для перенаправления пути (в веб-приложение на основе этого руководства), но Drupal его не видит.

Я попробовал следующий код, чтобы просто перенаправить каждую страницу сайта на /счастливый, но после пересборки кеша ничего не происходит; Я могу нормально перемещаться по сайту и никогда не перенаправляться.

/mymodule/src/PathProcessor/MyPathProcessor.php

пространство имен Drupal\mymodule\PathProcessor;

используйте Drupal\Core\PathProcessor\InboundPathProcessorInterface;
используйте Symfony\Component\HttpFoundation\Request;

класс MyPathProcessor реализует InboundPathProcessorInterface {

  общедоступная функция processInbound ($ путь, запрос $ запрос) {
    вернуть '/ счастливый';
  }

}

Я использую это неправильно? Что мне нужно сделать, чтобы Drupal использовал обработчик путей?

4uk4 avatar
флаг cn
Кстати, это не редирект. Обработка пути аналогична перезаписи в .htaccess без `[R,L]`.Если вы хотите переписать путь с перенаправлением, вы можете использовать подписчика событий. См. https://www.drupal.org/node/2013014.
Рейтинг:2
флаг us

Процессор пути — это служба, помеченная path_processor_inbound. Например, это определение path_processor.files процессор пути, используемый ядром Drupal.

path_processor.files:
  класс: Drupal\system\PathProcessor\PathProcessorFiles
  теги:
    - {имя: path_processor_inbound, приоритет: 200}

Имейте в виду, что вызываются все обработчики пути. Если путь, заданный обработчиком путей, не используется в Drupal, другой обработчик путей мог изменить его. Такие услуги, как path_processor.files используйте приоритет по этой причине: чтобы избежать конфликтов с другими службами того же типа, которые в этом случае могут изменить путь, уже измененный другим обработчиком пути.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.