#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.