TYPO3:两个插件之间的通信

TYPO3: Communicate between two plugins

我做了两个插件,一个调用listAction显示记录列表,另一个调用viewAction显示选中的记录。

如何显示我创建了 show 插件的页面,其中包含我要显示的记录的 uid?

\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
  'Vendor.Extension',
  'List',
  [
      \Vendor\Extension\Controller\Controller::class => 'list',
  ],
  [
      \Vendor\Extension\Controller\Controller::class => '',
  ]
);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
  'Vendor.Extension',
  'View',
  [
      \Vendor\Extension\Controller\Controller::class => 'show',
  ],
  [
      \Vendor\Extension\Controller\Controller::class => '',
  ]
);

我需要做的是扩展 News 所做的事情,但该扩展中的方法已被弃用,TYPO3 说我们现在必须使用多个插件来完成。

https://docs.typo3.org/c/typo3/cms-core/master/en-us/Changelog/10.3/Deprecation-89463-SwitchableControllerActions.html

“通信”不是在您的插件之间,而是通过页面请求。在您的列表中跟随“more/detail”-link 将使用附加参数重新加载页面。

在这里,f:link.action 就是您要查找的内容。此 ViewHelper 使您能够 link 到指定的扩展 (extensionName)、插件 (pluginName)、控制器 (controller) 和操作 (action)。