在前端页面的后端创建 link

Create a link in backend to a frontend page

我会 link 创建一个 link 到后端模块内的前端页面。 使用:

<f:link.page pageUid="40" >Link</f:link.page>

无效。它为当前后端模块生成一个link。

有什么解决办法吗?

这是一个很长的故事,但要点是:如果没有很多变通方法和虚拟 objects/values.

,就不可能在 BE/CLI 上下文中创建 FE 链接

如果可能,您应该使用像 pagepath 这样的解决方案,它为 eID 脚本生成 URLs,根据需要执行实际的 URL 生成。

从TYPO3 v9开始你可以使用下面两行代码:

$site = GeneralUtility::makeInstance(SiteFinder::class)->getSiteByPageId(2);
$url = (string)$site->getRouter()->generateUri(2,['benni' => 'cool']);

感谢 Benni Mack @ TYPO3Camp Mitteldeutschland