我爱水煮鱼 » WordPress » WordPress 技巧:WordPress 中设置只有注册用户才能浏览特定的内容

WordPress 技巧:WordPress 中设置只有注册用户才能浏览特定的内容

一些网站在推广中,有时候希望提高用户的注册量,所以可能希望让有些内容是用户登陆之后才能看到的。WordPress 目前的设置中,最复杂的设置是只能把文章设置为密码保护,然后通过别的途径吧密码告诉用户才能浏览,这个方法对提高网站用户注册没有帮助,而且非常不方便。今天我就讲讲如何通过 WordPress 自定义字段完美解决这个问题。

我们增加一个自定义字段:user_only,如果这个值不为零,这这篇日志或者页面是只能给注册用户浏览,然后通过 the_content 来控制内容显示,这样就能简单的并且灵活设置具体到哪篇文章或者页面是只能注册用户浏览。详细代码如下:

<?php
/*
Plugin Name: User only
Plugin URI: http://fairyfish.net/2010/05/13/post-for-user-only/
Description:通过给 user_only 这个自定义字段设置为 true 来设置当前文章仅限于会员浏览。
Author: Denis
Version: 1.0
Author URI: http://wpjam.com
*/
add_filter('the_content', 'post_user_only');
function post_user_only($text){
    global $post;
    
    $user_only = get_post_meta($post->ID, 'user_only', true);
    if($user_only){
        global $user_ID;
        if(!$user_ID){
            $redirect = get_permalink($post->ID);
            $text = '该内容仅限于会员浏览,请<a href="'.wp_login_url($redirect).'">登录</a>!';
        }
    }
    return $text;
}
?>

把上面带复制成一个文件上传到插件目录,激活即可。

标签:

分享到:

11 条评论 添加你的评论 →

  • Dianso 2010-05-13 12:41:32 #

    学习了

    支持 反对

  • neekey 2010-05-13 14:41:25 #

    顶,很有创意啊~~~

    支持 反对

  • copyleft 2010-05-13 23:47:16 #

    去注册 测试了 貌似没成功呢?
    登录 然后 有个跳转页面 就跳出来了 :cry:

    支持 反对1

  • 网事只能回味 2010-05-16 16:25:38 #

    嘿嘿,原来如此,找这个方式有段时间了,没想在这儿挖到了宝,感谢并顶撞你! :lol:

    支持 反对

  • HeeYe 2010-12-06 14:10:31 #

    你好,我装了插件然后出了问题

    Warning: Cannot modify header information – headers already sent by

    搜了一下MS只能通过修改php.ini的办法解决,是吗?

    盼回复,谢谢~~

    支持 反对

  • kansee 2011-09-02 01:42:52 #

    请问通过 the_content 来控制内容显示,这个如何操作呢?
    我试了一下,未注册的什么都看不到了,而且还显示一些奇怪字符

    支持 反对

发表评论

你必须 登陆 之后才能留言。你可以使用以下方式快速登陆我爱水煮鱼:

使用新浪微博登陆 使用腾讯微博登陆 使用豆瓣登陆

你也可选择直接在本站 注册