我正在尝试创建一个合作伙伴门户页面(该页面用于我们的业务合作伙伴查看特定于他们的重要信息),因此希望创建一个自定义登录页面。
我已经在网上阅读了许多教程,我完全按照说明进行操作,但它根本不起作用。
我通过制作页面模板并将其放入自定义主题来创建登录页面。
以下是模板代码:
<?php
/**
* Template Name: Log in
*/
get_header();
if($_POST) {
global $wpdb;
//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 );
if ( is_wp_error($user_verify) ) {
echo \'<span class="mine">Invalid Login Details</span>\';
} else {
echo "<script type=\'text/javascript\'>window.location.href=\'". home_url() . \'/partner-portal/\' ."\'</script>";
exit();
}
} else {
}?>
<form id="wp_login_form" action="<?php echo home_url(); ?>/login/"
method="post">
<div><img src="this-is-an-image.png"/></div>
<label for="tab-1" class="tab">Sign In</label><br>
<label class="my-username" >Username</label><br>
<input type="text" name="username" class="text" value=""><br>
<label class="my-password" >Password</label><br>
<input type="password" name="password" class="text" value=""> <br>
<label>
<input class="myremember" name="rememberme" type="checkbox" value="forever">
<span class="hey">Remember me</span></label>
<br><br>
<input type="submit" id="submitbtn" name="submit" value="Login">
</form>
<?php get_footer(); ?>
注意:当我输入错误的凭据时,我会得到预期的“无效登录详细信息”。
当我输入正确的凭据时,它会将我重定向到/partner portal/,但是运行quick is\\u user\\u logged\\u in()会显示该用户未登录。
任何帮助都将不胜感激!