wordpress - 提交联系表 7 后访问表单数据
问题描述
我安装了 Contact Form 7,我想在发送电子邮件之后或之前访问表单数据。理想情况下,我不需要发送电子邮件,我只需要表单数据即可填充custom fields
到目前为止我发现的是:
add_action('wpcf7_mail_sent', function ($cf7) {
// Run code after the email has been sent
echo $cf7;
die();
});
将上述操作添加到 后functions.php
,表单操作永远不会完成。我想查看数据、找到 postID 并创建自定义字段。
任何帮助表示赞赏。
解决方案
die()阻止代码运行,将其删除,它应该可以正常工作。
现在关于来自数据,您将需要获取表单实例,然后您将可以访问所有表单数据。
这是一个例子
add_action('wpcf7_mail_sent', function ($cf7) {
$submission = WPCF7_Submission::get_instance();
if ($submission) {
$cf7_data = $submission->get_posted_data();
}
}
现在,因为所有这些都发生在后端,您将无法回显其中的任何内容来检查您得到的内容。
我为此使用 phps error_log函数。这是一个片段:
error_log(print_r($your_value_here, true), 3, __DIR__ . '/temp-log.txt');
error_log("\r\n\r\n", 3, __DIR__ . '/temp-log.txt');
这将在主题的根目录中创建一个名为 temp-log.txt 的文件,其中包含您传递给 error_log 的数据。将 $your_value_here 更改为您需要的任何内容。
希望这会有所帮助=]
推荐阅读
- reactjs - 发布代码不应该在开发模式下工作,React native
- salt-stack - 盐编排
- laravel - 这个 Redis 门面和 predis 有什么区别?Laravel
- php - 在 wordpress 中使用 $_GET 参数
- sql - SQL 查询 - 移动小数点
- mysql - 在 mysql 8.0.22 上使用 percona xtrabackup 执行备份和恢复
- reactjs - 如何使用 reactjs 项目初始化模拟服务工作者(msw)
- r - 在 R 中重新排列数据框
- javascript - php的动态选择选项
- json - 无法解析 Ansible Jinja2 中的 JSON 列表