Wordpress在自定义登陆页面并且禁用自带的登陆页面
Posted jerryqi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Wordpress在自定义登陆页面并且禁用自带的登陆页面相关的知识,希望对你有一定的参考价值。
在使用Wordpress制作主题之后,不想要他自带的登陆页面以及地址。
1、新建一个用户页面来接管与登陆相关的动作
//在主题根目录下新建page-login.php,通过action获取用户动作,然后进行不同的处理。 //当然也可以只把login动作的代码放里面,其余再新建page-register.php等页面。 $action = isset($_REQUEST[‘action‘]) ? $_REQUEST[‘action‘] : ‘login‘; global $wpdb, $user_ID; switch ($action) { case ‘logout‘: if ($user_ID) { wp_logout(); $redirect_to = apply_filters(‘logout_redirect‘, $redirect_to, $requested_redirect_to, $user); wp_safe_redirect($redirect_to); } exit(); case ‘forget‘: if ($user_ID) { wp_redirect(get_bloginfo(‘url‘)); } else { //在这里写忘记密码的处理过程 } exit(); case ‘reset‘: if ($user_ID) { //这里写重置密码的处理过程 } else { wp_redirect(wselibrary_getloginurl()); } exit(); case ‘register‘: if ($user_ID) { wp_redirect(get_bloginfo(‘url‘)); } else { //在这里写用户注册的处理过程 } exit(); case ‘login‘: default: if ($user_ID) { wp_redirect(get_bloginfo(‘url‘)); } else { //这里写用户登陆的处理过程 } exit(); }
2、 禁用Wordpress自带的登陆页面
//原理其实很简单,就是让用户访问自带登陆页面时直接跳转到指定页面 if (!function_exists(‘login_protection‘)) { function login_protection() { //如果有需要,你可以给自己一个访问的途径 if ($_GET[‘superuser‘] != ‘password‘) header(‘Location: /index.php/login‘); //当然你也可以禁止所有人访问 //header(‘Location: /index.php/login‘); } add_action(‘login_enqueue_scripts‘,‘login_protection‘); }
以上是关于Wordpress在自定义登陆页面并且禁用自带的登陆页面的主要内容,如果未能解决你的问题,请参考以下文章
Wordpress - The7 模板 - 在每个页面上我都有 4 个警告并且不知道如何在菜单或 php 站点/内容中禁用它
sql 用于禁用现有WordPress页面,帖子和自定义帖子类型的注释,引用和pingback的SQL命令。默认的WordPress