Php 具有自定义页面的wordpress中的联系人表单

Php 具有自定义页面的wordpress中的联系人表单,php,html,wordpress,Php,Html,Wordpress,我正在尝试在我的网站上注册/登录,但我不知道怎么做,因为我正在尝试做一个wordpress主题,而在我的主题中没有小部件设置。我已经创建了模板页面,我想集成这些页面。 帮助我添加登录和注册自定义WP主题 以下是表单字段,您可以在以后根据需要进行编辑 您有用户名,可以用作用户名。 最后提交按钮中的电子邮件和密码 <form id="sign_up_form" action="" method="post"> <input type="text" id="user_nick

我正在尝试在我的网站上注册/登录,但我不知道怎么做,因为我正在尝试做一个wordpress主题,而在我的主题中没有小部件设置。我已经创建了模板页面,我想集成这些页面。
帮助我添加登录和注册自定义WP主题

以下是表单字段,您可以在以后根据需要进行编辑

您有用户名,可以用作用户名。 最后提交按钮中的电子邮件和密码

<form id="sign_up_form" action="" method="post">
    <input type="text" id="user_nickname" name="user_nickname" placeholder="Enter user desire username" />
    <input type="text" id="user_email" name="user_email" placeholder="Enter your email" />
    <input id="user_pass" name="user_pass" type="password" placeholder="Enter your password">
    <input type="submit" value="Register now" />
</form>
几乎完成了我们开始的工作,您需要将此代码放在functions.php中

  function wordpress_custom_signup_function(){

    //Get Defined Role by WordPress
    $default_role = get_option('default_role');

    $nickname = $_POST['nickname'];
    $user_email = $_POST['user_email'];
    $user_pass = $_POST['user_pass'];       

    //Check For the NickName Empty
    if(isset($nickname) && $nickname <> ''){
        $userdata = array(
            'user_login'    => $nickname,
            'user_email'  => $user_email,
            'user_pass'  => $user_pass,
            'role' => $default_role
        );
        $exists = email_exists($user_email);
        $user_signup = wp_insert_user( $userdata );
        if ( !$exists ){
            if ( is_wp_error($user_signup) ){
                echo json_encode(array('signup'=>false, 'message'=>esc_attr__('Please verify the details you are providing.','custom-theme')));
            } else {
                echo json_encode(array('signup'=>true, 'message'=>esc_attr__('Your request submitted successfully, Redirecting you to login page!','custom-theme')));
            }
        }else{
            echo json_encode(array('signup'=>false, 'message'=>'Notice: Email already exists!'.$exists.''));            
        }
    }else{
        echo json_encode(array('signup'=>false, 'message'=>esc_attr__('Please verify the details you are providing.','custom-theme')));
    }

    die();
}   

 function custom_function_for_signup(){

    wp_register_script('ajax-signup-script', get_template_directory_uri().'/js/ajax-signup-script.js', array('jquery') ); 
    wp_enqueue_script('ajax-signup-script');

    wp_localize_script( 'ajax-signup-script', 'ajax_signup_object', array( 
        'ajaxurl' => esc_url(admin_url( 'admin-ajax.php' )),
        'redirecturl' => esc_url(home_url()),
        'loadingmessage' => esc_attr__('Sending user info, please wait...','custom-theme')
    ));

    // Enable the user with no privileges to run ajax_login() in AJAX
    add_action('wp_ajax_custom_signup', 'wordpress_custom_signup_function');
    add_action('wp_ajax_nopriv_custom_signup', 'wordpress_custom_signup_function' );
}

add_action('init', 'custom_function_for_signup');
函数wordpress\u自定义\u注册\u函数(){
//通过WordPress获取定义的角色
$default_role=get_选项(“default_role”);
$昵称=$_帖子['昵称];
$user\u email=$\u POST['user\u email'];
$user\u pass=$\u POST['user\u pass'];
//检查昵称是否为空
如果(isset($昵称)&&$昵称“”){
$userdata=array(
'user_login'=>$昵称,
“用户电子邮件”=>$user\u电子邮件,
“用户通行证”=>$user\u通行证,
“角色”=>$default\u角色
);
$exists=email\U exists($user\U email);
$user\u signup=wp\u insert\u user($userdata);
如果(!$存在){
如果(是错误($user\u signup)){
echo json_encode(数组('signup'=>false,'message'=>esc_attr_uuu('请验证您提供的详细信息','custom-theme'));
}否则{
echo json_encode(数组('signup'=>true,'message'=>esc_attr_uuu('Your request submitted successfully,redirect Your to login page!','custom-theme'));
}
}否则{
echo json_encode(数组('signup'=>false,'message'=>'注意:电子邮件已经存在!'.$exists');
}
}否则{
echo json_encode(数组('signup'=>false,'message'=>esc_attr_uuu('请验证您提供的详细信息','custom-theme'));
}
模具();
}   
函数自定义函数用于注册()的函数{
wp_register_script('ajax-signup-script',get_template_directory_uri()。/js/ajax signup script.js',array('jquery');
wp_排队_脚本(“ajax-signup-script”);
wp_本地化_脚本('ajax注册脚本','ajax_注册对象',数组(
'ajaxurl'=>esc_url(admin_url('admin ajax.php')),
'重定向url'=>esc_url(home_url()),
'loadingmessage'=>esc\u attr\uuuuuuuu('正在发送用户信息,请稍候…','custom-theme')
));
//允许没有权限的用户在ajax中运行ajax\u login()
添加操作(“wp\u ajax\u自定义注册”、“wordpress\u自定义注册函数”);
添加动作(“wp\u ajax\u nopriv\u custom\u signup”,“wordpress\u custom\u signup\u function”);
}
添加_操作('init','custom_function_for_signup');

您能解释一下如何添加此代码,以便我能帮助您吗?当然。。我创建了一个新的file.php,在这里我粘贴了你的html代码。。在此之后,我用你的文件名创建了一个新的文件js,并粘贴你的js。。在'function.php'之后,我粘贴你的函数。。当我做完所有的事。。创建一个新的wp页面,我只看到html。。当我输入数据时,我编辑了代码,您可能缺少我添加的document.ready代码,您需要在js文件中更新该代码。请确保您在chrome中运行此功能,并检查控制台选项卡,以防出现任何错误,请告诉我。
  function wordpress_custom_signup_function(){

    //Get Defined Role by WordPress
    $default_role = get_option('default_role');

    $nickname = $_POST['nickname'];
    $user_email = $_POST['user_email'];
    $user_pass = $_POST['user_pass'];       

    //Check For the NickName Empty
    if(isset($nickname) && $nickname <> ''){
        $userdata = array(
            'user_login'    => $nickname,
            'user_email'  => $user_email,
            'user_pass'  => $user_pass,
            'role' => $default_role
        );
        $exists = email_exists($user_email);
        $user_signup = wp_insert_user( $userdata );
        if ( !$exists ){
            if ( is_wp_error($user_signup) ){
                echo json_encode(array('signup'=>false, 'message'=>esc_attr__('Please verify the details you are providing.','custom-theme')));
            } else {
                echo json_encode(array('signup'=>true, 'message'=>esc_attr__('Your request submitted successfully, Redirecting you to login page!','custom-theme')));
            }
        }else{
            echo json_encode(array('signup'=>false, 'message'=>'Notice: Email already exists!'.$exists.''));            
        }
    }else{
        echo json_encode(array('signup'=>false, 'message'=>esc_attr__('Please verify the details you are providing.','custom-theme')));
    }

    die();
}   

 function custom_function_for_signup(){

    wp_register_script('ajax-signup-script', get_template_directory_uri().'/js/ajax-signup-script.js', array('jquery') ); 
    wp_enqueue_script('ajax-signup-script');

    wp_localize_script( 'ajax-signup-script', 'ajax_signup_object', array( 
        'ajaxurl' => esc_url(admin_url( 'admin-ajax.php' )),
        'redirecturl' => esc_url(home_url()),
        'loadingmessage' => esc_attr__('Sending user info, please wait...','custom-theme')
    ));

    // Enable the user with no privileges to run ajax_login() in AJAX
    add_action('wp_ajax_custom_signup', 'wordpress_custom_signup_function');
    add_action('wp_ajax_nopriv_custom_signup', 'wordpress_custom_signup_function' );
}

add_action('init', 'custom_function_for_signup');