如何在联系表格7中提交表格后重定向?

时间:2015-07-01 10:30:41

标签: php wordpress-plugin soap-client contact-form

我使用联系表单7提交表单并使用wpcf7_before_send_mail通过soap客户端生成参考号。

代码是

function wpcf7_do_something($WPCF7_ContactForm)
{

    if (3490 == $WPCF7_ContactForm->id()) {
      $client = new SoapClient('http://xxx.xxx.xxx.xxx:xxxxx/4dwsdl', array('trace' => 1));
   $res_date = date("Y-m-d", strtotime('01 feb 2015'));
   $enquiery_id = $client->__call('WS_AddContact',  
       array(
           'narwal Devender',
           null,
           'Devender',
           'narwal',
           'hisar',
           'Hisar',
           'Haryana',
           '125001',
           'Australia',
           '01662246138',
           '9802260750',
           '8529000369',
           'vijaylal@webmastershisar.com',
           true,
           'google',
           'google',
           'Phone Call',
           0,
           'type of good should be strode.',
           $res_date,
           '2 to 6  Months',
           'SSPSS',
           null,//array('xxxxxxx'),
           array('46.75'),
           array('1 x 1 x 1 (1qm)'),
           array('xxxxxxxxx'),
           array('send print should be here to work.'),
           null,
           'xxxxxxxxxxxxx',
           null
       )
   );


mail('vijaylal@webmastershisar.com', 'My Subject',$enquiery_id); 

    }
    return $wpcf7;
}

这样可以正常工作并发送电子邮件。

但我想在thankyou页面或任何页面上显示自定义查询ID,或者使用一些重定向并将数据发送到网址。

我也试图在wpcf7_mail_sent中使用此代码,这也有效,

但是当我尝试使用重定向时,它什么都不做,联系表单就会挂起。

add_action('wpcf7_mail_sent', 'wpcf7_redirect_on_submit');
function wpcf7_redirect_on_submit($wpcf7)
{
        header( 'Location: http://www.google.com' );
        exit;
}

如何在不使用javascript或jquery on_sent_ok的情况下重定向wpcf7_mail_sent中的联系表单?

如何在页面上向用户显示此查询ID?

任何人都可以帮忙完成这项工作。

1 个答案:

答案 0 :(得分:1)

您还可以使用可用的挂钩来更改属性

add_filter( 'wpcf7_contact_form_properties', 'let_me_redirect', 10, 2 );
/**
 * Add the code that will run when on_sent_ok is triggered;
 */
function let_me_redirect( $properties, $contact_form_obj){
 $properties[ 'additional_settings' ] .="on_sent_ok: \"location.replace('http://www.google.com');\""
 ;
 return $properties;
}