首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将CF7表单数据传递给插件

将CF7表单数据传递给插件
EN

WordPress Development用户
提问于 2018-07-13 13:14:16
回答 1查看 873关注 0票数 0

我想知道是否有可能将CF7表单提交数据发送到插件以使用API处理支付。

工作流程如下,

用户在前端填写表单(CF7表单) -->在邮件发送之前->将数据传递给插件(插件A) ->插件A获取数据并处理支付(使用提交的支付信息)->将数据返回给functions.php --> Submit返回数据给另一个插件(插件B) -->插件B,然后将数据存储在数据库中-->返回真实->邮件(通过CF7发送)

我看过钩子,但我不确定它们是否那样起作用。

我已经构建了插件,以便它与支付网关工作,但我无法找到一种方法,实际传递数据从CF7表单提交到插件。

进一步资料

我使用OOP方法构建了插件。

EN

回答 1

WordPress Development用户

回答已采纳

发布于 2018-07-13 13:49:08

一个完整的答案会有点复杂,因为“插件A”和“插件B”应该被深入分析,所以检查一下可用的钩子和过滤器,但是如果我知道你写了你自己的插件,所以你可以完全控制它。尽管如此,从CF7获得提交数据的起点如下:

代码语言:javascript
复制
add_action("wpcf7_submit", "Stack_308450_forward_cf7", 10, 2);

function Stack_308450_forward_cf7($form, $result) {
    // var_dump($submission->status);
    $submission = WPCF7_Submission::get_instance();
    if ($result["status"] == "mail_sent") {
        $posted_data = $submission->get_posted_data();
        Stack_308450_wpcf7_posted_data($posted_data);
    }
};
function Stack_308450_wpcf7_posted_data($posted_data){
    //do something here
}

我个人已经在CF7提交上实现了一些功能:在本例中,我们在发送邮件后处理数据,因此,如果您找到一个更合适的钩子,比如“wpcf7_before_send_mail”,您应该自己做标记:

代码语言:javascript
复制
function action_wpcf7_before_send_mail( $contact_form ) { 
  // var_dump($contact_form);
};

add_action( 'wpcf7_before_send_mail', 'action_wpcf7_before_send_mail', 10, 1 ); 

还审议也涉及到这一进程的关于提交的审定问题。

下面是一个可用CF7钩子列表

票数 1
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/308450

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档