Расширение функции TypoLink для добавления параметров GET в зависимости от pId - PullRequest
0 голосов
/ 18 июня 2019

Как я могу расширить функцию генерации TypoLink, которая каждый раз, когда генерируется TypoLink, проверяет определенный targetpId, а затем добавляет идентификатор текущей страницы в качестве аргумента GEt. Например:

When a Link on the page with ID 5 targets the page with the ID 19 then add ?ref=5 to the link

В настоящее время я не знаю, с чего начать, какой класс / метод я могу попытаться переопределить, чтобы включить этот тип поведения.

1 Ответ

1 голос
/ 19 июня 2019

Расширяющиеся классы (XCLASSes)

Я не знаю о TYPO3 9.5, но мы сделали это в 8.7.Вот фрагмент о расширенных классах, которые мы использовали:

$GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects'][TYPO3\CMS\Frontend\Page\PageRepository::class] = array(
    'className' => Vendor\Extension\Page\PageRepository::class
);

$GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects'][TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer::class] = array(
    'className' => Vendor\Extension\ContentObject\ContentObjectRenderer::class
);

$GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects'][TYPO3\CMS\Core\DataHandling\DataHandler::class] = array(
    'className' => Vendor\Extension\DataHandling\DataHandler::class
);

$GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects'][TYPO3\CMS\Frontend\Typolink\PageLinkBuilder::class] = array(
    'className' => Vendor\Extension\Typolink\PageLinkBuilder::class
);

Это не совсем то, что вы ищете, но хороший способ начать.

...