我可以扩展 TypoLink 生成函数,每次生成 TypoLink 时,它都会检查某个 targetpId,然后将当前页面的 id 作为 GEt 参数附加。例如:
When a Link on the page with ID 5 targets the page with the ID 19 then add ?ref=5 to the link
我目前不知道从哪里开始,我可以尝试覆盖哪个类/方法来包含这种行为。
我不知道 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
);
它不完全是您正在寻找的东西,而是一个很好的开始方式。