我需要在unctions.php中执行重定向

时间:2015-08-20 作者:davidcm86

我使用联系人表格7,填写表格时,我将数据保存在bbdd中。对于该用途:

add_action( \'wpcf7_before_send_mail\', \'save_form\' );

function save_form( $wpcf7 ) {
  global $wpdb;
  $submission = WPCF7_Submission::get_instance();

  if ( $submission ) {
       $submited = array();
       $submited[\'title\'] = $wpcf7->title();
       $submited[\'posted_data\'] = $submission->get_posted_data();
    }

    $data = array(
      \'empresa\'  => $submited[\'posted_data\'][\'your-empresa\'],
      \'nombre\'  => $submited[\'posted_data\'][\'your-nombre\'],
      \'apellido\' => $submited[\'posted_data\'][\'your-apellidos\'],
    );
    $table = $wpdb->prefix . \'usuarios\';
    $success = $wpdb->insert( $table, $data );

    //wp_redirect( "/info-contratar/" );
    //header("Location: /info-contratar/"); exit();
}
函数结束时。我需要使用其他视图:info contactar,但它从不做重定向。只有我看到一个使用firebug工具的Get请求。

如何重定向并显示我的页面信息Contrtar?

当做

1 个回复
SO网友:Howdy_McGee

如果您使用AJAX提交联系人表单7数据(默认情况下已打开),则无法使用wpcf7_before_send_mail 钩不过,您还有一些其他选择:

1) 关闭打包为整个JS标志的WPCF7 AJAX。这也将关闭JS验证和所有非优化。Documentation. 将此添加到wp配置

define(\'WPCF7_LOAD_JS\', false);
使用内置WPCF7 Additional Settings Field 字段来处理提交时的重定向。它看起来像这样:

on_sent_ok: "location = \'http://yourdomain.com/info-contratar/\';"
在页面上或外部文件中使用jQuery,然后监听mailsent.wpcf7. Documentation.

jQuery( document ).ready( function( $ ) {
    $( \'.wpcf7\' ).on( \'mailsent.wpcf7\', function( e ) {
        window.location.href = \'http://yourdomain.com/info-contratar/\';
    } );
} );

结束

相关推荐

我需要在unctions.php中执行重定向 - 小码农CODE - 行之有效找到问题解决它

我需要在unctions.php中执行重定向

时间:2015-08-20 作者:davidcm86

我使用联系人表格7,填写表格时,我将数据保存在bbdd中。对于该用途:

add_action( \'wpcf7_before_send_mail\', \'save_form\' );

function save_form( $wpcf7 ) {
  global $wpdb;
  $submission = WPCF7_Submission::get_instance();

  if ( $submission ) {
       $submited = array();
       $submited[\'title\'] = $wpcf7->title();
       $submited[\'posted_data\'] = $submission->get_posted_data();
    }

    $data = array(
      \'empresa\'  => $submited[\'posted_data\'][\'your-empresa\'],
      \'nombre\'  => $submited[\'posted_data\'][\'your-nombre\'],
      \'apellido\' => $submited[\'posted_data\'][\'your-apellidos\'],
    );
    $table = $wpdb->prefix . \'usuarios\';
    $success = $wpdb->insert( $table, $data );

    //wp_redirect( "/info-contratar/" );
    //header("Location: /info-contratar/"); exit();
}
函数结束时。我需要使用其他视图:info contactar,但它从不做重定向。只有我看到一个使用firebug工具的Get请求。

如何重定向并显示我的页面信息Contrtar?

当做

1 个回复
SO网友:Howdy_McGee

如果您使用AJAX提交联系人表单7数据(默认情况下已打开),则无法使用wpcf7_before_send_mail 钩不过,您还有一些其他选择:

1) 关闭打包为整个JS标志的WPCF7 AJAX。这也将关闭JS验证和所有非优化。Documentation. 将此添加到wp配置

define(\'WPCF7_LOAD_JS\', false);
使用内置WPCF7 Additional Settings Field 字段来处理提交时的重定向。它看起来像这样:

on_sent_ok: "location = \'http://yourdomain.com/info-contratar/\';"
在页面上或外部文件中使用jQuery,然后监听mailsent.wpcf7. Documentation.

jQuery( document ).ready( function( $ ) {
    $( \'.wpcf7\' ).on( \'mailsent.wpcf7\', function( e ) {
        window.location.href = \'http://yourdomain.com/info-contratar/\';
    } );
} );

相关推荐