我希望我能设法解释这个问题...
我有一个处理共享内容的T3扩展程序。
在这个共享内容中,我们有链接(page-id),这些链接被定义并转换为/ en / clients / contact,使用
$cObj = t3lib_div::makeInstance('tslib_cObj');
$href = $cObj->getTypoLink_URL($linkValue); // $linkValue is an integer (e.g. 153)
这很好 - 直到我更改页面上的语言。然后,最后使用的URL有点“粘贴”,语言指示符不再出现在URL中。
意思是:
所以上面的链接就像客户端/联系人一样(前导斜杠也消失了)。
奇怪的是,我有一个本地安装的同一页面没有出现问题。它就在网页上。
我试图找到配置上的差异,但没有。
我到目前为止唯一的区别是,我使用Typo3 v4.5.35进行本地安装,使用v4.7.17进行在线安装。
任何想法???
答案 0 :(得分:0)
这很奇怪......但是,我找到了一个解决方案。
而不是使用$cObj->getTypoLink_URL($linkValue);
我正在使用它:
$configurations['additionalParams'] = "&L=".(int)t3lib_div::_GP('L');
$configurations['returnLast'] = 'url'; // get it as URL
$configurations['parameter'] = $linkValue;
$href = $cObject->typolink(NULL, $configurations);
似乎当我创建$ cObj时,L参数在某处丢失了,有些则是。通过手动添加,链接按预期工作。