Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/247.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 成功后将WordPress联系人表单重定向到新页面_Php_Wordpress_Contact Form - Fatal编程技术网

Php 成功后将WordPress联系人表单重定向到新页面

Php 成功后将WordPress联系人表单重定向到新页面,php,wordpress,contact-form,Php,Wordpress,Contact Form,对于我的Wordpress网站,我有一个联系表格。为了分析转换,我想将联系人表单重定向到一个新页面。例如:mypage.com/succes。我在functions.php中做了很多尝试,但是没有任何效果。有人能帮我吗 联系人是Functions.php的一部分: add_shortcode( 'et_pb_contact_form', 'et_pb_contact_form' ); function et_pb_contact_form( $atts, $content = n

对于我的Wordpress网站,我有一个联系表格。为了分析转换,我想将联系人表单重定向到一个新页面。例如:mypage.com/succes。我在functions.php中做了很多尝试,但是没有任何效果。有人能帮我吗

联系人是Functions.php的一部分:

    add_shortcode( 'et_pb_contact_form', 'et_pb_contact_form' );
    function et_pb_contact_form( $atts, $content = null ) {
    global $et_pb_contact_form_num;

    extract( shortcode_atts( array(
            'module_id' => '',
            'module_class' => '',
            'captcha' => 'on',
            'email' => '',
            'title' => '',
        ), $atts
    ) );

    $et_error_message = '';
    $et_contact_error = false;
    $contact_email = isset( $_POST['et_pb_contact_email'] ) ? sanitize_email( $_POST['et_pb_contact_email'] ) : '';

    if ( isset( $_POST['et_pb_contactform_submit'] ) ) {
        if ( 'on' === $captcha && ( ! isset( $_POST['et_pb_contact_captcha'] ) || empty( $_POST['et_pb_contact_captcha'] ) ) ) {
            $et_error_message .= sprintf( '<p>%1$s</p>', esc_html__( 'Make sure you entered the captcha.', 'Divi' ) );
            $et_contact_error = true;
        } else if ( 'on' === $captcha && ( $_POST['et_pb_contact_captcha'] <> ( $_SESSION['et_pb_first_digit'] + $_SESSION['et_pb_second_digit'] ) ) ) {
            $et_error_message .= sprintf( '<p>%1$s</p>', esc_html__( 'You entered the wrong number in captcha.', 'Divi' ) );

            unset( $_SESSION['et_pb_first_digit'] );
            unset( $_SESSION['et_pb_second_digit'] );

            $et_contact_error = true;
        } else if ( empty( $_POST['et_pb_contact_name'] ) || empty( $contact_email ) || empty( $_POST['et_pb_contact_message'] ) ) {
            $et_error_message .= sprintf( '<p>%1$s</p>', esc_html__( 'Make sure you fill all fields.', 'Divi' ) );
            $et_contact_error = true;
        }

        if ( ! is_email( $contact_email ) ) {
            $et_error_message .= sprintf( '<p>%1$s</p>', esc_html__( 'Invalid Email.', 'Divi' ) );
            $et_contact_error = true;
        }
    } else {
        $et_contact_error = true;
        if ( isset( $_SESSION['et_pb_first_digit'] ) )
            unset( $_SESSION['et_pb_first_digit'] );
        if ( isset( $_SESSION['et_pb_second_digit'] ) )
            unset( $_SESSION['et_pb_second_digit'] );
    }

    if ( ! isset( $_SESSION['et_pb_first_digit'] ) )
        $_SESSION['et_pb_first_digit'] = $et_pb_first_digit = rand(1, 15);
    else
        $et_pb_first_digit = $_SESSION['et_pb_first_digit'];

    if ( ! isset( $_SESSION['et_pb_second_digit'] ) )
        $_SESSION['et_pb_second_digit'] = $et_pb_second_digit = rand(1, 15);
    else
        $et_pb_second_digit = $_SESSION['et_pb_second_digit'];

    if ( ! $et_contact_error && isset( $_POST['_wpnonce-et-pb-contact-form-submitted'] ) && wp_verify_nonce( $_POST['_wpnonce-et-pb-contact-form-submitted'], 'et-pb-contact-form-submit' ) ) {
        $et_email_to = '' !== $email
            ? $email
            : get_site_option( 'admin_email' );

        $et_site_name = get_option( 'blogname' );

        $contact_name   = stripslashes( sanitize_text_field( $_POST['et_pb_contact_name'] ) );

        $headers[] = "From: \"{$contact_name}\" <{$contact_email}>";
        $headers[] = "Reply-To: <{$contact_email}>";

        wp_mail( apply_filters( 'et_contact_page_email_to', $et_email_to ),
            sprintf( __( 'New Message From %1$s%2$s', 'Divi' ),
                sanitize_text_field( $et_site_name ),
                ( '' !== $title ? sprintf( _x( ' - %s', 'contact form title separator', 'Divi' ), sanitize_text_field( $title ) ) : '' )
            ), stripslashes( wp_strip_all_tags( $_POST['et_pb_contact_message'] ) ), apply_filters( 'et_contact_page_headers', $headers, $contact_name, $contact_email ) );

        $et_error_message = sprintf( '<p>%1$s</p>', esc_html__( 'Thanks for contacting us', 'Divi' ) );
    }

    $form = '';

    $name_label = __( 'Name', 'Divi' );
    $email_label = __( 'Email Address', 'Divi' );
    $message_label = __( 'Message', 'Divi' );

    $et_pb_contact_form_num = ! isset( $et_pb_contact_form_num ) ? 1 : $et_pb_contact_form_num++;

    $et_pb_captcha = sprintf( '
        <div class="et_pb_contact_right">
            <p class="clearfix">
                %1$s = <input type="text" size="2" class="input et_pb_contact_captcha" value="" name="et_pb_contact_captcha">
            </p>
        </div> <!-- .et_pb_contact_right -->',
        sprintf( '%1$s + %2$s', esc_html( $et_pb_first_digit ), esc_html( $et_pb_second_digit ) )
    );

    if ( $et_contact_error )
        $form = sprintf( '
            <div class="et_pb_contact">
                <div class="et-pb-contact-message">%11$s</div>

                <form class="et_pb_contact_form clearfix" method="post" action="%1$s">
                    <div class="et_pb_contact_left">
                        <p class="clearfix">
                            <label class="et_pb_contact_form_label">%2$s</label>
                            <input type="text" class="input et_pb_contact_name" value="%3$s" name="et_pb_contact_name">
                        </p>
                        <p class="clearfix">
                            <label class="et_pb_contact_form_label">%4$s</label>
                            <input type="text" class="input et_pb_contact_email" value="%5$s" name="et_pb_contact_email">
                        </p>
                    </div> <!-- .et_pb_contact_left -->

                    <div class="clear"></div>
                    <p class="clearfix">
                        <label class="et_pb_contact_form_label">%7$s</label>
                        <textarea name="et_pb_contact_message" class="et_pb_contact_message input">%8$s</textarea>
                    </p>

                    <input type="hidden" value="et_contact_proccess" name="et_pb_contactform_submit">

                    <input type="submit" value="%9$s" class="et_pb_contact_submit">

                    %6$s

                    %10$s
                </form>
            </div> <!-- .et_pb_contact -->',
            esc_url( get_permalink( get_the_ID() ) ),
            $name_label,
            ( isset( $_POST['et_pb_contact_name'] ) ? esc_attr( $_POST['et_pb_contact_name'] ) : $name_label ),
            $email_label,
            ( isset( $_POST['et_pb_contact_email'] ) ? esc_attr( $_POST['et_pb_contact_email'] ) : $email_label ),
            (  'on' === $captcha ? $et_pb_captcha : '' ),
            $message_label,
            ( isset( $_POST['et_pb_contact_message'] ) ? esc_attr( $_POST['et_pb_contact_message'] ) : $message_label ),
            __( 'Submit', 'Divi' ),
            wp_nonce_field( 'et-pb-contact-form-submit', '_wpnonce-et-pb-contact-form-submitted', true, false ),
            $et_error_message
        );

    $output = sprintf( '
        <div id="%4$s" class="et_pb_contact_form_container clearfix%5$s">
            %1$s
            %2$s
            %3$s
        </div> <!-- .et_pb_contact_form_container -->
        ',
        ( '' !== $title ? sprintf( '<h1 class="et_pb_contact_main_title">%1$s</h1>', esc_html( $title ) ) : '' ),
        ( '' !== $et_error_message ? sprintf( '<div class="et-pb-contact-message">%1$s</div>', $et_error_message ) : '' ),
        $form,
        ( '' !== $module_id
            ? esc_attr( $module_id )
            : esc_attr( 'et_pb_contact_form_' . $et_pb_contact_form_num )
        ),
        ( '' !== $module_class ? sprintf( ' %1$s', esc_attr( $module_class ) ) : '' )
    );

    return $output;
}
add_shortcode('et_pb_contact_form','et_pb_contact_form');
函数et\u pb\u contact\u表单($atts,$content=null){
全球$et\u pb\u联系人\u表单\u数量;
提取(短码)附件(数组)(
“模块id'=>”,
“模块_类”=>”,
“验证码”=>“开启”,
'电子邮件'=>'',
'标题'=>'',
),$atts
) );
$et_error_message='';
$et_contact_error=false;
$contact_email=isset($_POST['et_pb_contact_email'])?清理电子邮件($_POST['et_pb_contact_email']):'';
如果(isset($\u POST['et\u pb\u contactform\u submit'])){
如果('on'==$captcha&&(!isset($\u POST['et\u pb\u contact\u captcha']))| |空($\u POST['et\u pb\u contact\u captcha'])){
$et_error_message.=sprintf(“%1$s

”,esc_html_uuu(“‘确保您输入了验证码’,‘Divi’)); $et_contact_error=true; }否则如果('on'==$captcha&($$u POST['et\u pb\u contact\u captcha'])($会话['et\u pb\u first\u digit']+$会话['et\u pb\u second\u digit'])){ $et_error_message.=sprintf(“%1$s

”,esc_html_uuu(“‘您在验证码中输入了错误的号码’,‘Divi’); 取消设置($_会话['et_pb_第一位]); 取消设置($_会话['et_pb_第二位]); $et_contact_error=true; }else if(空($_POST['et_pb_contact_name'])空($_contact_email)|空($_POST['et_pb_contact_message'])){ $et_error_message.=sprintf(“%1$s

”,esc_html_uuu(“‘确保填写所有字段’,‘Divi’)); $et_contact_error=true; } 如果(!是电子邮件($contact\u email)){ $et_error_message.=sprintf(“%1$s

”,esc_html(“'Invalid Email.”,'Divi'); $et_contact_error=true; } }否则{ $et_contact_error=true; 如果(isset($_会话['et_pb_第一位数字'])) 取消设置($_会话['et_pb_第一位]); 如果(isset($_会话['et_pb_第二位])) 取消设置($_会话['et_pb_第二位]); } if(!isset($\会话['et\u pb\u第一位数字'])) $\会话['et\u pb\u first\u digit']=$et\u pb\u first\u digit=rand(1,15); 其他的 $et_pb_first_digit=$_会话['et_pb_first_digit']; if(!isset($\会话['et\u pb\u第二位数字'])) $\会话['et_pb_second_digit']=$et_pb_second_digit=rand(1,15); 其他的 $et_pb_second_digit=$_会话['et_pb_second_digit']; 如果(!$et\U联系人错误和isset($POST[''''''''''''''''''''''''''''''''.'et-pb-contact-form-submitted'])和wp\U验证($'POST['''''''.'et-pb-contact-form-submitted'.'提交'.'et-pb-contact-form')){ $et_email_to=''!=$email ?$电子邮件 :获取站点选项(“管理员电子邮件”); $et_site_name=get_选项('blogname'); $contact\u name=stripslashes(清理文本字段($\u POST['et\u pb\u contact\u name']); $headers[]=“From:\”{$contact\u name}\”; $headers[]=“回复:”; wp_邮件(应用过滤器('et_contact_page_email_to',$et_email_to), sprintf(u uu('newmessagefrom%1$s%2$s','Divi'), 清理文本字段($et\U站点名称), (“”!=$title?sprintf(x('-%s',联系人表单标题分隔符,'Divi'),清理文本字段($title)):“”) ),条带斜杠(wp_strip_all_标记($_POST['et_pb_contact_message'])),应用过滤器('et_contact_page_headers',$headers,$contact_name,$contact_email)); $et_error_message=sprintf(“%1$s

”,esc_html_uuu(“‘谢谢与我们联系’,‘Divi’)); } $form=''; $name_label=uuu('name','Divi'); $email_label=uuu('email Address','Divi'); $message_label=uuu('message','Divi'); $et_pb_contact_form_num=!isset($et_pb_contact_form_num)?1:$et_pb_contact_form_num++; $et_pb_captcha=sprintf('

%1$s=

', sprintf(“%1$s+%2$s”、esc_html($et_-pb_第一位数字)、esc_html($et_-pb_第二位数字)) ); 如果($et\u联系错误) $form=sprintf(' %11美元

%2元

%4美元

%7元 %8美元

%6美元 %10美元 ', esc_url(get_permalink(get_the_ID()), $name_标签, (isset($_POST['et_pb_contact_name'])?esc_attr($_POST['et_pb_contact_name']):$name_label), $email_标签, (isset($_POST['et_pb_contact_email'])?esc_attr($_POST['et_pb_contact_email']):$email_label), ('on'==$captcha?$et\u pb\u captcha:''), $message_标签, (isset($_POST['et_pb_contact_message'])?esc_attr($_POST['et_pb_contact_message']):$message_label), __(“提交”、“Divi”), wp_nonce_字段('et pb contact form submit','wpnce-et-pb-contact-form-submitted',true,false), $et\u错误消息 ); $output=sprintf(' %1元 %2元 %3美元 ',