TYPO3 — переопределить ядроМаршрутизациюГенератор URL-адресов

#class #typo3 #overriding

Вопрос:

Я хочу переопределить функцию doGenerate() в этом классе, но невозможно классифицировать этот класс. В качестве альтернативы я попробовал решение Хельмута Хаммеля в typo3-config-обработке, где он использует class_alias, например:

class_alias(HelhumTYPO3ConfigHandlingXclassConfigurationManager::class, TYPO3CMSCoreConfigurationConfigurationManager::class);

но тоже не повезло:

‘Предупреждение PHP: Не удается объявить класс TYPO3CMSCoreRoutingUrlGenerator, так как имя уже используется в /home/ahkalbert/vendor/netklaar/typo3-routing/res/php/autoload-include.php на линии 2’

Есть какие-нибудь предложения, как это решить?

Комментарии:

1. Пожалуйста, добавьте некоторые предпосылки, почему вы хотите переопределить этот класс. Может быть, есть лучшие решения.

2. Я хочу иметь возможность манипулировать декодированным и закодированным URL-адресом, как это было возможно в ext realurl. Поэтому я классифицировал классы/Маршрутизацию/Маршрутизатор страниц и Классы/Маршрутизацию/Генератор URL-адресов. Первое работает, второе нет (пока) — на данный момент я просто заменяю файл UrlGenerator, но это, конечно, не так, как это должно быть «исправлено».

3. SlugHelper Для этой цели в нем есть крючок, который позволяет свободно регулировать сгенерированный снаряд. Тогда вам не нужно ничего делать во время выполнения. Если это не поможет, пожалуйста, добавьте более подробную информацию о том, что именно вы пытаетесь сделать.

4. К сожалению, это не помогает: я хочу иметь возможность манипулировать всем URL-адресом, а не только той частью, которая добавляется slughelper.