优化和减肥wordpress数据库

我们要给主题创建一个自定义登录页面,让用户不需通过wordpress程序默认的登录页面登录后台。wordpress主题自定义登录页面在一定程序上,也能提升一个wordpress主题折层次,比如一些要求相对较高的商业主题。嗯,下面就一起来看一下怎么制作wordpress自定义登录页面吧。

首先在主题文件夹下创建一个登录文件page-login.php,用dreamweaver打开这个文件,添加页面定义代码:


/*

Template Name: 登陆页面

*/

然后,添加判断用户是否登录代码:

global $wpdb,$user_ID;

if (!$user_ID) { //判断用户是否登录

//接下来的代码都添加在这里

}else { //跳转到首页

echo "window.location='". get_bloginfo('url') ."'";

}

接着添加验证数据代码,如下:

if($_POST){ //数据提交

//We shall SQL escape all inputs

$username = $wpdb->escape($_REQUEST['username']);

$password = $wpdb->escape($_REQUEST['password']);

$remember = $wpdb->escape($_REQUEST['rememberme']);

if($remember){

$remember = "true";

} else {

$remember = "false";

}

$login_data = array();

$login_data['user_login'] = $username;

$login_data['user_password'] = $password;

$login_data['remember'] = $remember;

$user_verify = wp_signon( $login_data, false );

//wp_signon 是wordpress自带的函数,通过用户信息来授权用户(登陆),可记住用户名

if ( is_wp_error($user_verify) ) {

echo "用户名或密码错误,请重试!";//不管啥错误都输出这个信息

exit();

} else { //登陆成功则跳转到首页(ajax提交所以需要用js来跳转)

echo "window.location='". get_bloginfo('url') ."'";

exit();

}

} else {

//这里添加登录表单代码

}

然后,在上面的代码中的“ //这里添加登录表单代码”添加如下代码:

get_header();//载入头部文件

?>

$("#submitbtn").click(function() {


var input_data = $('#wp_login_form').serialize();

$.ajax({

type: "POST",

url: "",

data: input_data,

success: function(msg){

$('.loader').remove();

$('

').html(msg).appendTo('div#result').hide().fadeIn('slow');

}

});

return false;

});

get_footer(); //载入底部文件

表单代码一定要放在最后一个大括号前面哦。好了,这样我们就制作好了wordpress自定义登录页面。

你可能感兴趣的:(优化和减肥wordpress数据库)