我有一个正在编写的插件,希望与联系表7进行交互。
在我的插件中,我添加了以下操作add_action

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;

}


我提交了联系表格,但是我没有执行add_action。
我不确定联系表格7时如何使我的插件拦截或执行某些操作
做某事。可以,如何执行此操作有帮助吗?

最佳答案

我必须这样做以防止发送电子邮件。希望能帮助到你。

/*
    Prevent the email sending step for specific form
*/
add_action("wpcf7_before_send_mail", "wpcf7_do_something_else");
function wpcf7_do_something_else($cf7) {
    // get the contact form object
    $wpcf = WPCF7_ContactForm::get_current();

    // if you wanna check the ID of the Form $wpcf->id

    if (/*Perform check here*/) {
        // If you want to skip mailing the data, you can do it...
        $wpcf->skip_mail = true;
    }

    return $wpcf;
}


这段代码假定您正在运行最新版本的CF7,上面的代码一直工作到几个月前,直到他们去对代码进行一些重构为止。 [2015年4月28日]

关于wordpress - 发送前如何 Hook 到联系表7,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29926252/

10-09 17:59