WordPress程序的网站禁止游客访问
侧边栏壁纸
  • 累计撰写 75 篇文章
  • 累计收到 21 条评论

WordPress程序的网站禁止游客访问

逍遥博客
2022-11-09 / 0 评论 / 10 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2023年09月22日,已超过308天没有更新,若内容或图片失效,请留言反馈。
大家可能有些网站不想要其他人访问,只想要自己(管理员)访问,那么可以试试这个方法,原理很简单,利用wordpress的函数
is_user_logged_in() 【判断用户是否已经登录】
auth_redirect() 【将用户引导到登录页面】
判断用户是否登录,没登录的将跳转到登录页面,然后禁止任何人注册就行了

教程开始,第一步,自定义函数
当前主题文件 的function.php中添加如下代码

/*判断用户是否登录*/  
 function liveme_if_login() {   
   if (!is_user_logged_in()) {   
   auth_redirect();   
   }   
}  

在接着进行第二步:调用自定义函数
在当前主题的header.php中添加如下代码:

<?php liveme_if_login(); ?>

就可以了,是不是很简单!

然后开始拓展

如果你是想针对其中的某几篇文章或者某个分类的文章,又或者是某个页面添加该功能,也不是很难的事情。举个例子,如果你想对其中某几篇文章进行限制,你可以如法炮制:

function liveme_if_login() {   
global $post;   
if (!is_single()) return;   
$ids = array(188, 185, 171); // array of post IDs that force login to read   
if (in_array((int)$post-&gt;ID, $ids) &amp;&amp; !is_user_logged_in()) {   
auth_redirect();   
}  

【说明:array中的那几个数字便是你想要进行限制的文章ID(怎么看文章ID?既可以看数据库,也可以进入该文章的编辑状态,地址栏中的“post=”后面的数字便是该文章的ID)】

如你只想对所有的具体文章页面进行限制,而其他的分类页面和首页等不进行限制,那么,你也可以这样:

function liveme_if_login() {   
  if (is_single() &amp;&amp; !is_user_logged_in()) {   
  auth_redirect();   
}   
} 

相信各位童鞋已经不难看出是其中的is_single()起了位置判断的作用,那么你可以以此类推,对其他的页面进行自定义。我就不在一一举例说明了。

教程来源:https://blog.csdn.net/whatsyourname/article/details/84450045

0

评论 (0)

取消
Blog逍遥阁博客