I’ve gotten a few emails from people that are still running the 2.0.x versions of WordPress (which will apparently be supported until 2010). Due to a boring technical reason, the “User Levels” menu is hidden from the admin section if you use Post Levels 1.1.1 with WordPress 2.0.x.
You can download the release from here: Post Levels 1.0.9
Note that this version lacks features in 1.1.1 — this is due to the new capabilities introduced in WordPress 2.1.
Do not use this plugin if you are running WP 2.1 or greater, your waistline will expand and dogs will no longer like you.
Post Levels 1.1.1 is a bugfix release that will (hopefully) get rid of some of the problems people have been seeing with the 1.1 release.
Download
Post Levels 1.1.1
New Features
- Use the post teaser as the preview: You can now show the post teaser as the preview for non-logged in users. (requested by Gas)
- Bug fixes: This release should fix the issues with Ultimate Tag Warrior 3.1415926 (duplicate posts and SQL errors). If you find more, please let me know.
Note: Several people have mentioned that Post Levels is causing their posts to appear in reverse order. I’m unable to duplicate this, so please let me know if it’s still happening in this version.
The latest version of the Post Levels Plugin is now available.
Download
Post Levels Version 1.1
Installation
- Save the post-levels.php file in your wp-content/plugins directory.
- Activate the plugin through your WordPress admin area (See the official documentation if you need more help with this.)
- Go to the Users section of your admin area, then go to User Levels. Give levels to your users
- Make posts private when writing or editing by using the Post Level drop down, and setting the Post Status to Private
New Features
- Private Pages: Support for private pages, just like posts
- Previews for Private Posts: This has been requested often — you can now show a preview for your private posts (even shows up in RSS!). The preview can be just the title, or the title and the post excerpt.
- Private Posts in archive counts: Another frequently-requested item
- Private posts (usually) show up in category counts: This works in most themes. Let me know if yours doesn’t (make sure you tell me which theme!)
- No more HTTP Auth: This fixes the issue some people saw with password prompts. I’ll replace this feature in the next version
- WordPress 2.1 compatibility: Most of the new features don’t work with older versions of WP — sorry.
Donate
If you’re feeling generous, go for it:
For those running WordPress 2.1 already, you can grab Post Levels 1.1b2, which should fix the post-doubling issue and incompatibility with PHP4 people have been seeing. There are no new features in this release.
Update: The final version is now out.
In preparation for the upcoming release of WordPress 2.1, I’ve prepared a new version of the Post Levels plugin. I’ll release the final 1.1 once the WordPress 2.1 is released. If you’re running 2.1 already, please let me know if you find any issues.
Download
Post Levels version 1.1b
Installation
- Save the post-levels.php file in your wp-content/plugins directory.
- Activate the plugin in the WordPress UI
You must be running version 2.1 of WordPress. In theory, it won’t break older versions, but won’t really do much.
New Features
- Private Pages: You can now have private pages, just like posts
- Private Posts show up in Archive counts & Next/Prev links: Corrects a long standing bug where private posts weren’t counted. Unfortunately, this bug still affects categories
- Removed HTTP Auth for private RSS feeds: This didn’t work particularly well for people, it’ll be replaced before the final relase (see below).
- Other minor fixes …
Upcoming Features
- RSS for private posts: This time it’ll really work :)
- Private posts in Category counts: This looks like it’ll require either editing your theme, or using the Sandbox theme.
- Tell users there are private posts: Allow non-logged in users to know there are hidden posts
- Category-based level: Set default levels for certain categories
- Level quick tag: Allow some kind of shortcut for setting the post level
Update: Version 1.1b2 should fix the post doubling and PHP4 issues
Update: Final version available
It’s been a while since the last release of the Post Levels plugin, I believe it is just about time for a new release.
I’m a selfish developer, so I’m prioritizing based on my needs. Here is what I need for the next version:
- Non HTTP-auth private RSS feeds: My web host runs PHP in CGI mode, which doesn’t support the HTTP authentication
- Flickr integration: This will depend on what I can implement with the Flickr API, but I’d like some tighter integration with their contact list and privacy
There are a few features that people have frequently requested as well, I’d like to get the following done:
- Tell users there are private posts: Frequently requested option, would allow non-logged in users to know there are hidden posts
- Category-based level: Set default levels for certain categories
- Level quick tag: Allow some kind of shortcut for setting the post level
Any other requests?
BTW, don’t expect me to have this all coded tomorrow :)
Version 1.0 of the Post Levels plugin has been released. This is a release for WordPress 2.0, and is not compatible with earlier versions of WordPress.
Download
Post Levels 1.0
Installation Instructions
- Save the file
post-levels.php in your wp-content/plugins/ directory
- Activate the plugin within WordPress in your Plugins section
See the WordPress documentation if you’re having issues installing the plugin.
Upgrade Instructions
If you are upgrading from a previous version of WordPress, you should follow these steps:
- Deactivate the Post Levels plugin
- Upgrade your WordPress installation to 2.0 (this exercise is left to the reader)
- Download
post-levels.php, replacing the previous version
- Activate the plugin
- Click on the new Post Levels Configuration tab in the Plugins admin area:

- Scroll to the bottom of the page, and check the box labeled Copy user information …, then click Migrate User Levels

- Now go to the Users section in your WordPress admin. Click on the a new User Levels section.

- Confirm that all your user levels are appropriate
- You can now go to the Authors & Users section in order to change user permissions as necessary. I recommend changing all non-posting users to “Subscriber”
New Features
Version 1.0 has many frequently-requested features, including:
- Private posts over RSS: By adding
http_auth=yes to the query string of any WordPress URL, you can now use HTTP authentication to get private posts. Since most RSS readers support HTTP authentication, you can attach this query string to your feed URL and see private posts. The amount of data shown in the post is user-configurable: You can show just the title, excerpt, or give the full content.
- Independent User Level Control: The previous version of Post Levels used WordPress’ built-in user level property. This was a problem for many people because giving a user access to private posts also gave them administrative capabilities. This version assigns levels to users that are completely independent from the WordPress administrative functions.
- New Adminstrative UI for controlling plugin options: Control options such as the default post level, user level, etc
I’ve updated the plugin to be compatible with WordPress 2.0 RC3 — if you’re testing WP 2.0, you can download Post Levels 0.9. Let me know if you find any bugs. I’ll release the real version with any bugfixes when WP 2.0 releases.
Partial list of new features in this release:
- Support for private posts in RSS feeds: Blog readers can use HTTP authentication to read private posts
- Post and User Level Admin UI
- Configurable options: New configuration options for features.
- No more Single Post bug: Yeah, that bug sucked
Note: This plugin is not compatible with previous versions of WordPress. If you try to use it with old versions of WP, it will probably make your tongue green.
Version 0.2 of the Post Levels plugin has been released. This release makes the plugin compatible with WordPress 1.5.1. There are no new features in this release.
Download
Post Levels Plugin v0.2.1
Update 5/22: Sigh, as mentioned in the comments, single-post view is broken. This is due to an issue in WordPress that I unfortunately cannot change within a plugin. I’ve filed a bug; in the meanwhile, I recommend staying on 1.5 until this (and other) issues (hopefully) get fixed in 1.5.1.1
Version 0.2 of the Post Levels plugin has been released.
Changes:
Two new functions were added:
- is_private: Returns true if the current post is private (this follows the same model as the other “is” functions)
- is_post_level($level): Returns true if the current post’s level is equal to $level, which defaults to 0
Download
Post Levels Plugin v0.2
Install
Installation instructions
Using the New Functions
An example for using the is_private() function is shown below:
<?php if (function_exists('is_private') && is_private()) : ?>
<span class="private">(private)</span>
<?php endif;?>
It is good style to check if the function exists before calling, in case the plugin is disabled for some reason.
Post Levels is a Wordpress plugin which allows you to restrict access to posts based upon the user level. Wordpress 1.3/1.5 or greater required.
Version 0.1 is available for download: Post Levels Plugin v0.1
Install
- Save the post-levels.php.txt as post-levels.php file to your wp-content/plugins/ directory
- Activate the plugin within Wordpress in the Plugins section
Use
- Set the Post Status to Private: This ensures your post will not be shown if the plugin is accidentally disabled
- Add a Custom Field named post_level
- Set the value of post_level to a number between 1 and 10: Only registered users with a level greater than or equal to the post_level will be able to see your post.
Known Issues
- Archive and Category Post listings do not include private posts