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‘);
}

  

原文地址:https://www.cnblogs.com/jerryqi/p/9728729.html

时间: 2024-10-05 22:45:27

Wordpress在自定义登陆页面并且禁用自带的登陆页面的相关文章

登陆判读,并跳转到指定页面(window.location.href='http://localhost/index.html')

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 function confirm(){   var tel=$tel.val();//获取页面中登录名和密码   var pwd=$pwd.val();   if(tel==""|| pwd==""){//判断两个均不为空(其他判断规则在其输入时已经判断)     alert(&qu

注册绑定页面及微信二维码登陆页面开发项目总结

乐帝来到新的实习单位,也许是之前面试或者在爱奇艺实习的履历,很快被项目组"委以重任".而不是老套路刚入职,先在架构师那培训两周,专心钻研框架,不问具体业务.乐帝只有几天看框架的时间,当被分配给框架页面时,还是不能得心应手,正如同事所说,学习还得按部就班,写写例子,看代码是不行的.    目前这家公司类似<走出软件作坊>作者阿朱所在行业,是面向中大型企业,提供人才管理解决方案的软件公司,时髦的词叫SAAS.这类公司层次要比外包公司高,却还有很多外包公司的特点,不像互联网公司有

Wordpress实现自定义ajax请求

Wordpress实现ajax请求,分为两种情况: 前台页面发起的ajax请求和后台页面发起的ajax请求. 通过ajax传递的数据中,action是一个固定字段,而且action字段所对应的值必须和hook名称中的后缀(下述hook里的 your_action_name 部分)相匹配.Wordpress也是借此来区分不同的ajax请求. 1.后台发起ajax请求 涉及一个hook : wp_ajax_(your_action_name) 处理ajax的后端php代码 js代码 值得注意的是,自

.NET MVC页面生命周期及传统ASP.NET页面周期

目前我主要使用.Net MVC框架进行网页创建,数据库是MSSQL Server.所以,我就用.NET MVC框架的web页面周期来说明页面的生命周期,但是我觉着其他MVC框架也是大同小异的. 本文主要分两个部分 一..NET MVC的网页生命周期 二.普通ASP.NET的网页生命周期 一..NET MVC的网页生命周期 ASP.NET MVC请求从开始到结束的每一个过程,在浏览器输入URL并敲击回车来请求一个ASP.Net MVC网站的页面之后发生的任何事情,都是页面的生命周期的一部分. 为什

PDF页面怎么删除之PDF文档页面处理技巧

相信很多人已经知道借助PDF编辑器我们就可以将之前难以编辑的PDF格式文件进行编辑处理,那么,PDF编辑器上面的常规操作想必大家都已经学会了,今天小编就来介绍一些比较进阶的教程,比如PDF文件的页面处理. 一.PDF编辑器上的页面处理 1.插入页面 插入页面有以下几种方式:插入页面.插入空白页面.插入图像.插入扫描的页面.插入文本.插入RTF,我们可以根据自己的需要进行选择. 这里小编以"插入页面"这个功能为例讲解一下具体操作: 首先一次进入"文档-插入页面-插入页面&quo

页面静态化2--- PHP缓存机制完成页面静态化

我们可以使用PHP自带的缓存机制来完成页面静态化,但在这里,需要说明一点,仅靠PHP缓存机制并不能完美的解决页面静态化,往往需要和其他页面静态技术(通常是伪静态技术)结合使用 例子: 当访问一个页面时,先判断是否存在缓存,存在则直接输出缓存文件中的内容,否则,先查询数据库,获得数据,生成缓存文件. 详解PHP缓存机制: output_buffering,常用的函数 ob_start() ob_get_contents() ob_clean() ob_end_clean() ob_flush()

jsp页面编写锚点,和html页面编写锚点

html锚点的编写方式,在jsp中不兼容.因此在写动态网页时,需要注意 一:html页面中的锚点编写方式 1 HTML锚点 2 3 <a href="#abc">goto1</a> 4 5 <a name="abc">111</a> 6 7 这样从goto1可以定位到111 二:jsp页面编写锚点的方式 JSP锚点 <a href="javascript:void(0)" onclick=&q

页面跳转(带返回参数的)---------android

在网上看了很多的按钮点击事件,,,都是配置监听什么的.....我用的不是配置监听. 是和winform事件相似的方法,首先要有两个界面,在界面的button中添加onclick事件: 这是第一个主界面中的按钮<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" androi

自制Javascript分页插件,支持AJAX加载和URL带参跳转两种初始化方式,可用于同一页面的多个分页和不同页面的调用

闲话部分 最近闲着实在无聊,就做了点小东西练练手,由于原来一直在用AspNetPager进行分页,而且也进行了深度的定制与原有系统整合的也不错,不过毕竟是用别人的,想着看自己能试着做出来不能,后台的分页插件已经有比较成熟的了,那就自己试着写一个前台分页吧. 话不多说,先上效果图: 优点与缺点 来说说优缺点吧,首先AspNetPager是后台分页控件,所以在向客户端回传HTML文档之前生成HTML阶段 就会把分页代码生成完毕,然后回传,而JS是前端代码,就是HTML文档在服务器组织完毕往客户端传送