我有一个wordpress实例,带有contact-form-7插件。在一些教程中,我看到我可以在发送带有以下代码的邮件之前做一些事情:
add_action("wpcf7_before_send_mail", "wpcf7_do_something_else");
function wpcf7_do_something_else(&$wpcf7_data) {
// Here is the variable where the data are stored!
var_dump($wpcf7_data);
// If you want to skip mailing the data, you can do it...
$wpcf7_data->skip_mail = true;
}
我从这里得到代码http://code.tutsplus.com/tutorials/mini-guide-to-contact-form-7--wp-25086
但不知怎么的,它不起作用。我没有收到任何错误——即使没有$wpcf7_data->skip_mail = true
,联系表格也不再发送邮件,也不会打印任何内容。
我的问题:
我必须在哪里写这个代码?直接进入插件?(目前,我把这段代码写进了一个自定义插件中,可能错了?)是否可以打印表单中的任何数据?(教程不好吗?)
谢谢!
好吧,联系人表单不再发送电子邮件是正常的,因为它在$wpcf7_data->skip_mail = true;
行中定义。
如果您想要除默认发布(通过电子邮件发送)之外的其他内容,请使用此代码,如教程中所述。
但是,这段代码应该放在主题的functions.php
文件中(如果存在文件,请创建它)。但是,电子邮件将不会发送。
如果你想跳过电子邮件并执行其他操作,那么留下这段代码
$wpcf7_data->skip_mail = true;
在这行后面加上你的逻辑。
更准确地描述问题中您想做什么(而不是发送电子邮件)。