TYPO3 7.6.12对字符串上的成员函数getPage_noCheck()的调用
我不知道我的扩展为什么会抛出这个错误。因为像dd_googlesitemap这样的其他扩展以与我相同的方式使用它,并且这个扩展不会抛出这个错误 我的TYPO3 7.6.12对字符串上的成员函数getPage_noCheck()的调用,typo3,typo3-7.6.x,typolink,Typo3,Typo3 7.6.x,Typolink,我不知道我的扩展为什么会抛出这个错误。因为像dd_googlesitemap这样的其他扩展以与我相同的方式使用它,并且这个扩展不会抛出这个错误 我的$pageId参数有什么问题: /** * Creates a link to a single page * * @param array $pageId Page ID * @return string Full URL of the page including host name (escaped) */ protect
$pageId
参数有什么问题:
/**
* Creates a link to a single page
*
* @param array $pageId Page ID
* @return string Full URL of the page including host name (escaped)
*/
protected function getPageLink($pageId) {
$conf = array(
'parameter' => $pageId,
'returnLast' => 'url',
);
$link = htmlspecialchars($this->cObj->typoLink('', $conf));
return GeneralUtility::locationHeaderUrl($link);
}
这是错误输出:
Call to a member function getPage_noCheck() on string
这是第6364行的方法detectLinkTypeFromLinkParameter
为什么会出现此错误?您能像这样将您的pageUid转换为
int
吗
$conf = array(
'parameter' => (int)$pageId,
'returnLast' => 'url',
);
出现此错误是因为在我尝试使用时,
$GLOBAL['TSFE']
未初始化。初始化后,它不会抛出更多错误,并且工作正常
更新:
对于仍在搜索此解决方案并仍在使用typo3 7.6的用户:
搜索方法initTSFE,该方法在第208行定义(这是初始化“TSFE”的方法),并在getPageLink方法之前在第94行初始化
这里是指向文件的链接我已经做了。它是将其转换回字符串的方法
detectLinkTypeFromLinkParameter
。您是如何将$GLOBAL['TSFE']
序列化的?