最新消息:

WordPress插件:隐藏内容登陆后可见

wordpress admin 4014浏览 0评论

流年 网友的请求,特地研究了一下在WordPress博客中,如何实现隐藏文章的部分内容,使得用户在登陆后才可以看到。其实这个难度不是很 大,WordPress提供了很多的编程接口,可以很方便的实现很多功能,现在我使用WordPress Shortcode API,也就是简码,做了一个插件,基本上可以满足文章隐藏内容,登陆后可见的需求。之前也有人开发过相关的插件,不过那是隐藏文章全部内容,不能做到只 隐藏部分内容,可以说今天我做的这个插件更加灵活一些。

1.0版推出后不久,网友yken89提了一个非常有建设意义的意见。2.0版本采纳该网友的建议,添加了新的标签

<!--loginview start-->hidden contents.<!--loginview end-->

并在HTML模式下,添加了loginview按钮,方便用户添加隐藏内容。2.0版借鉴了WordPress插件Easy2hide的部分代码。升级至2.0版后,原来的标签

本文隐藏内容 登陆 后才可以浏览
将你想要隐藏的内容括起来,该标签支持可视化模式和HTML编辑模式。你的文章内容应该像这样子:

本文隐藏内容 登陆 后才可以浏览

3. 这样未登录的用户浏览文章的时候,将无法阅读隐藏的内容。

效果预览图:

loginview

转自:http://www.ludou.org/wordpress-plugin-login-to-view-all.html

WordPress技巧: 对游客隐藏部分文章

应haoran网友的请求,研究了一下如何对未登录的用户(即游客)隐藏指定文章,也就是隐藏文章不呈现给游客。跟之前我开发的插件WordPress插件发布:隐藏内容登陆后可见不太一样,该插件是隐藏文章的部分内容,游客可以看到该文章其他不隐藏的内容。现在的问题是,如何让游客连隐藏文章的影子都看不到,跟该文章没有发布过一样,更别说点击文章进去看了。

言归正传,说说实现的方法。打开你主题目录下的 index.php,查找类似代码:

 while (have_posts()) : the_post();

将其改成

    while (have_posts()) : the_post();
    if (get_post_meta($post->ID, "hide", true) == 1 && !$user_ID)
    {
        continue;
    }

该更改只针对首页,如果你想让所有归档页(分类页、标签页和日期页等)也对游客隐藏文章,可以照以上方法对主题目录下的archive.php进 行更改,如果主题文件夹里还有category.php、tag.php、author.php、date.php和search.php,也对其更改!

主题修改完毕,核心功能已经实现!以后你要做的就是,如果你想让某篇文章对游客隐藏,可以在编写文章的时候,建立一个自定义域 hide,其值设为1,这样该文章就对游客隐藏了!hide自定义域第一次创建后,以后可以在自定义域下拉框选择。如果hide自定义域没有添加,或者是其他值,文章将正常显示。

hidepost

转自:http://www.ludou.org/wordpress-hide-post-for-not-login-in-user.html

转载请注明:jinglingshu的博客 » WordPress插件:隐藏内容登陆后可见

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址