TYPO3 10,Powermail 8.4
通过 Powermail 成功进行双重选择加入验证后,我想将邮件数据发送到外部 API。
在
\In2code\Powermail\Controller\FormController
中有一个信号AfterPersist
我可以使用。
在我的扩展中我添加了
ext_localconf.php
:
/**
* Signal Powermail::optinConfirmAction 'AfterPersist'
*
* @var \TYPO3\CMS\Extbase\SignalSlot\Dispatcher $signalSlotDispatcher
*/
$signalSlotDispatcher = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Extbase\SignalSlot\Dispatcher::class);
$signalSlotDispatcher->connect(
\In2code\Powermail\Controller\FormController::class,
'AfterPersist',
\MyVendor\MyForms\Controller\MyFormController::class,
'sendToApi'
);
我的班级目前看起来像这样:
namespace MyVendor\MyForms\Controller;
use In2code\Powermail\Controller\FormController;
class MyFormController extends FormController {
/**
* arguments mail, form, hash
*
* @return void
*/
public function sendToApi() {
echo 'Test';
}
}
我的问题:
在 Powermail 8.4.x 中,信号槽仍然被实现。 从 Powermail 版本 12 开始,必须使用事件调度。
SignalSlotDispatcher 从 TYPO3 11 起被标记为已弃用,并将在 TYPO3 12 中删除。
如果您不使用 XDebug 进行调试,您可以在 sendToApi 方法中执行一个简单的 die 操作:
die("Is called")
然后你应该会看到一个带有该文本的白屏。