我在Wordpress 3.5中使用联系表7。

当前,当用户提交消息时,可以使用“其他设置”字段中的以下内容将他们重定向到成功页面:

on_sent_ok: 'location.replace("http://www.example.org/success-page");'

我希望能够通过使用来自字段的输​​入来自定义成功页面的输出,例如:
on_sent_ok: 'location.replace("http://www.example.org/success-page?name=yourname");'

我希望通过将通常的联系表单7短代码放入“其他”设置中,它可能已经发送了该字段值,但事实并非如此。

谁能建议我如何将联系表7中的字段值输入url或作为$ _POST参数发送?我猜可能需要一些JavaScript才能做到这一点。

最佳答案

这是可能的,但是您需要将已发布的数据从联系人表单保存到 session 中并显示在那里。

将此添加到您的functions.php

add_action('wpcf7_mail_sent', 'save_cf7_data');


function save_cf7_data($cf)
{

    if(session_id() == '') {
       session_start();
    }

    $current_submission = WPCF7_Submission::get_instance();

    $_SESSION['cf7_submission'] = $current_submission->get_posted_data();


}

而您的成功页面只需要打印 session 变量,例如:
echo $_SESSION['cf7_submission']['name'];

就这样。

关于javascript - 从Wordpress Contact Form 7提交的变量发送到成功页面,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17323586/

10-09 19:26