$this->request->getArgument('group');不能在面包屑插件之外工作

$this->request->getArgument('group'); not working outside the plugin for breadcrums

我构建了一个 TYPO3 扩展,其中包含一个前端插件。在流体模板中,我使用以下 link。此 links 包含名为 "group" 的参数,用于将值“3”发送到页面。

<f:link.action pageUid="1" pluginName="PluginAds" controller="Ads" arguments="{group: 3}">

在 "AdsController" 下的控制器 "PluginAds" 中,可以通过以下操作获取值:

$this->request->getArgument('group');

但我还想使用参数 "group" 来生成正确的面包屑 link。但是当我在不同的控制器中使用相同的代码时,我收到参数不存在的错误。有人可以帮忙吗?

使用浏览器工具检查 f:link.action 如何为您的插件参数构造前缀,即:tx_extkey_pluginsname[myparam]

在插件的操作中,您可以通过
获得myparam $this->request->getArgument('myparam')

无论如何你需要把它当作普通的 GET 数组,所以它会是这样的:

$pluginsParams = GeneralUtility::_GET('tx_extkey_pluginsname');
$myParam = $pluginsParams['myparam'];

另一件事是你应该经常检查是否:

$this->request->hasArgument('group')

在尝试使用它之前,否则它会导致您出现空指针异常。