分享各种网络资源
是我乃至整个互联网的精髓所在
 您目前所在位置: 站点首页 » WordPress » 代码 » 强制要求用户在访问你的WordPress博客之前登陆
+ 10

强制要求用户在访问你的WordPress博客之前登陆

强制要求用户在访问你的WordPress博客之前登陆-BanYuner

强制要求用户登陆之后才能访问你的站点文章,这个功能方面就要看个人了,有些文章涉及到技术含量比较高的,有些站点涉及到需要互动的,那么这些措施可能就有一定的作用了,但是在使用这个功能之前你必须确定你的站点值得用户去注册,要么没有什么值得用户注册的地方,那么这个功能可能让你的站点根本没人来。

效果方面显示为:站点首页可以访问,点击文章页面就会直接跳转到登录页面,就是这么简单。

下面是代码部分,直接添加到functions.php中即可:

function v_getUrl() {
$url  = isset( $_SERVER['HTTPS'] ) && 'on' === $_SERVER['HTTPS'] ? 'https' : 'http';
$url .= '://' . $_SERVER['SERVER_NAME'];
$url .= in_array( $_SERVER['SERVER_PORT'], array('80', '443') ) ? '' : ':' . $_SERVER['SERVER_PORT'];
$url .= $_SERVER['REQUEST_URI'];
return $url;
}
function v_forcelogin() {
if( !is_user_logged_in() ) {
$url = v_getUrl();
$whitelist = apply_filters('v_forcelogin_whitelist', array());
$redirect_url = apply_filters('v_forcelogin_redirect', $url);
if( preg_replace('/\?.*/', '', $url) != preg_replace('/\?.*/', '', wp_login_url()) && !in_array($url, $whitelist) ) {
wp_safe_redirect( wp_login_url( $redirect_url ), 302 ); exit();
}
}
}
add_action('init', 'v_forcelogin');
<p style="text-indent: 2em">通过代码我们可以看出基本是靠的302跳转实现的,监控的是80端口以及443端口。是否使用请慎重考虑。
关注我们 打赏 分享此文

微信扫码,关注我们

扫码,支持我

强制要求用户在访问你的WordPress博客之前登陆

支付宝(点击图片切换)

扫码,支持我

强制要求用户在访问你的WordPress博客之前登陆

微信(点击图片切换)

扫码,手机看

强制要求用户在访问你的WordPress博客之前登陆
匿名

个人评价:┃草根博主┃站点无技术含量┃文章内容不够吸引人┃转载内容随处可见┃资源均来自网络┃ 分享是我的宗旨,也是这个站点存在意义,分享的东西你现在可能不需要,但是我相信只要在某个时间你需要的时候能在这里找到,那么我就是成功的

相关推荐

  • WordPress基础教程-文章内容中如何添加音频文件

    WordPress基础教程-文章内容中如何添加音频文件

    目前基础教程已经基本完毕了,每篇文章都是用自己的语言写出来的,有兴趣查看其他教程的用户可以前往这里查看所有相关教程:教程合集 添加音频文件还...

    点击查看
  • WordPress评论上方显示评论用户列表

    WordPress评论上方显示评论用户列表

    一段时间之前,我在我的博客里面添加了下面的功能,这个功能我一开始觉得貌似没有人会喜欢或者说会显得比较多余,但是今天一个朋友问我如何实现这个功...

    点击查看
  • WordPress自动截取文章首段限定字数做为摘要

    WordPress自动截取文章首段限定字数做为摘要

    今天一个朋友问我这个问题,说实话,我也不像百度了,所以直接把 DUX 的方法介绍给大家了,我个人还是比较看好这个方法的。 DUX 实现这个功...

    点击查看
强制要求用户在访问你的WordPress博客之前登陆
7 + 7 =