我正在使用联系表格7 wordpress插件为网站之一,并在发送邮件后添加操作面临问题。
我想在用户提交数据时调用一些CRM Api,并发送邮件给管理员,所以我尝试了以下方式。
我为function.php添加了动作和功能
1) add_action('init',create_function('', 'add_action(“wpcf7_admin_after_mail”,“leads_integration_wp_cf7”);'));
function leads_integration_wp_cf7($cf7 ) {
$title = $contact_form->title;
$submission = WPCF7_Submission::get_instance();
if($submission)
{
$posted_data = $submission->get_posted_data();
//using curl make request here
}
}
所以使用这种方式我收到邮件,但我认为我的功能(leads_integration_wp_cf7)没有调用,我没有进入CRM。
2)
add_action('wpcf7_before_send_mail', 'leads_integration_wp_cf7');
使用这种方式我成功请求CRM但邮件发送停止。在表单页面ajax预加载器加载,加载,而不是重定向到URL。
任何人都面临这个问题我是wordpress的新手。
答案 0 :(得分:1)
wpcf7_admin_after_mail
文件中调用了edit-contact-form.php
操作,它用于表单控件,因此对此情况没有帮助。
当发布联系表单并发送电子邮件时,操作wpcf7_before_send_mail
对于执行某项任务是正确的,如果未应用此操作挂钩,您是否可以确认邮件是否正常工作?
还可以尝试将参数$cf7
重命名为$contact_form
function leads_integration_wp_cf7($cf7) {
要
function leads_integration_wp_cf7($contact_form) {