考虑一下以下页面树:
- 网站 A(具有域记录 a.example.com 的根页面)
- 页面 A
- A.1 页
- B页
- C页
- 页面 A
- 网站 B(具有域记录 b.example.com 的根页面)
- 第 X 页
- Page Y(“Page A”的挂载点,包含该页面的内容)
- 第 X 页
要生成规范 URL,我需要从原始页面获取绝对 URL。我在“Page X”上的打字稿 userfunc 中这样做,但似乎有问题:
这将返回页面 A 的 uid,而不是页面 X:
$GLOBALS['TSFE']->page['uid'];
但这不会返回预期的 URL “a.example.com/page-a/”,而是“b.example.com/page-x/page-y”:
$GLOBALS['TSFE']->cObj->typoLink_URL([
'parameter' => $GLOBALS['TSFE']->page['uid'],
'forceAbsoluteUrl' => 1
]);
显然,TYPO3 仍然以某种方式使用用户当前所在页面的域,而不是“页面 A”实际所在的原始域。
为了完成,这里有一些我已经在 setup.txt 中设置的值:
config {
absRefPrefix = /
content_from_pid_allowOutsideDomain = 1
typolinkCheckRootline = 1
typolinkEnableLinksAcrossDomains = 1
}
问题是:如何获取页面 A 的 uid 的原始 URL?