如何从 Extbase 调用ContentObjectRenderer方法stdWrap?
pi_base 插件的设置是:
plugin.tx_myextension {
standard = TEXT
standard.value = Sorry, no data could be fetched!
}
在没有 Extbase 的 TYPO3 扩展中,您拥有$conf
带有键的数组
'standard' =>
'TEXT' (string)
和钥匙
'standard.' =>
'value' (array) =>
'Sorry, no data could be fetched!'.
然后通过以下方式调用该方法:
$out =
$cObj->stdWrap(
$conf['standard'],
$conf['standard.']
);
这将呈现所需的文本“抱歉,无法获取数据!” 进入$out
.
但是在 Extbase 中,您没有这种方式的 $conf 数组。Exbase 提供$this->settings
用于存储设置的设置部分。
plugin.tx_myextension {
settings {
standard = TEXT
standard.value = Sorry, no data could be fetched!
}
}
Extbase 内部将标准设置存储为包含以下数据的二维数组:
'standard'
=> 'value' (Array)
=> 'Sorry, no data could be fetched!'
和
'standard'
=> '_typoScriptNodeValue' (Array)
=> 'TEXT'
我已经尝试过这种方式($conf = $this->settings
):
$out =
$cObj->stdWrap(
'',
$conf['standard']
);
我试过这个:
$out =
$cObj->stdWrap(
$conf['standard']['_typoScriptNodeValue'],
$conf['standard']
);
但结果只是一个空字符串。
使用 Extbase 完成 stdWrap 渲染的推荐方法是什么?