^ 回到顶部
  • 人生没有定律,每个人都有自己的节奏
  • 本站wordpress建站教程均通过实践后发布,希望对你有帮助,如果有代码出错,请联系站长解决
  • 希望你的坚持,都是因为热爱,而不是因为不甘心
  • 8年wordpress建站经验,5星服务品质
  • 那些不愿意让你吃亏的人,才是真正值得你深交的人,也是值得你付出时间的人
  • 腾讯云3年2核2G新品轻量限时特惠只需408元

WordPress如何做到限定用户阅读相关内容

今天在整理收藏夹的时候发现,以前收藏的一些文章站点打不开了,果然,个人站长越来越边缘化了,坚持下来的都是值得敬仰的,这让陌小雨萌生了一个想法,要不还是转载过来当个备份吧。

这个功能,陌小雨博客正在启用,网络收藏夹只对登陆用户开放,具体是怎么做的呢?

2 核 2G 限时特惠 396 元/3 年    宝塔建站 10850 大礼包

只允许登陆用户查看内容的核心代码就是:

if(is_user_logged_in())
        // 注意把下面的代码改成你的主题中代码,不要生搬硬套
        the_content();
    else
        echo '请登陆后阅读本文!';

我们稍微的拓展一下就可以实现在指定分类目录只允许登陆用户查看

if( in_category( array( 'music', 'news' ) ) ) {
    if(is_user_logged_in())
        // 注意把下面的...改成你的主题中代码,不要照抄
        the_content(...);
    else
        echo '请登陆后阅读本文!';
}
else {
    // 注意把下面的...改成你的主题中代码,不要照抄
    the_content(...);
}

上面的 music、news 为你的分类目录别名或名称,也可以更改为分类的 id,多个的话按格式添加就好

如果你的站点对用户进行了分级管理:

0 级对应 订阅者
1 级对应 投稿者
2 – 4 级对应 作者
5 – 7 级对应 编辑
8 – 10 级对应 管理员

也就是对不同级别的用户进行进一步的限制:核心代码:

 global $current_user;
    get_currentuserinfo();
	
    if(is_user_logged_in() && $current_user->user_level > 3)

为了更好的 SEO 效果,让搜索引擎可以收录你隐藏的文章内容,我们最好是给 spider 开放一个绿色通道,核心代码:

function is_se() {
   $u_agent = $_SERVER['HTTP_USER_AGENT'];
   $spiders = '/(spider|bot|slurp|Mediapartners|crawl)/i';
	
   if ( preg_match($spiders, $u_agent) )
      return 1;
   else
      return 0;
}
	
if(is_user_logged_in() || is_se())

接下来我集中把常用的 4 种限定用户阅读相关内容的方法整理给大家:
1、隐藏文章中部分内容,登陆后可见
2、隐藏文章中部分内容,评论可见
3、隐藏文章中部分内容,输入密码后可见
4、隐藏文章中部分内容,关注公众号后可见
5、添加以上 4 种办法的简码,方便编辑文章时候插入

具体方法如下:

你的二维码名字
请输入验证码查看内容
验证码:
微信扫码,回复关键字“92wp”获取验证码即可查看

赠人玫瑰,手有余香。