PrivateContent – How To Add User Roles and Content Level Security to WordPress Websites

June 24, 2013 · 1 comment

by Lars

One of the questions I often get from visitors and clients is if there is a simple solution for WordPress to set up pages that only specific users can access – almost like a customer area or an extranet. I stumbled over a plugin that I believe does a good job and have the features most people will need without being over complex.

WordPress started out as a blogging platform and it still takes a quite simplistic approach to user and content level security. It is possible to create users and assign each user to a single role. Roles in standard WordPress range from subscribers to various content provider roles such as author and editor. Finally, there is an admin role with all permissions available; this is used for setting up the website. The user model is primarily useful for controlling a content publishing process where contributors prepare content that editors moderate and publish. Securing a content for front-end visitors is possible in WordPress using a simple password protection. This is not user related and anyone with the password can unlock the content.

The default WordPress role system works great for most blogs and websites, but since it is limited in terms of user and content management, it fails as a membership, intranet or extranet website. Fortunately, there are some third party plugins made to enhance user and content management for WordPress. For setting up complex membership websites it is useful to look for membership plugins, but there are also more light weight solutions available that extent WordPress to help editorial teams take more control of the permissions for each team member. In addition, there are plugins that are simple yet powerful and works great for e.g. simple intra- and extranets where employees and customers can log in and see pages related to them.

PrivateContent is a good example of this and it is a very robust and feature rich solution. User management possibilities are improved by allowing you to create user categories and then categorize users to control what content they can access. An integrated set of options pages helps administrators work efficient with user management and permissions. In addition, it is possible to import and export users using Excel or CSV file format. With PrivateContent each user has its own private page too. Users can edit the page if you want them to and you can provide content for the individual users as needed. The plugin also comes with an integrated shortcode wizard that allows you to define private content inside normal WordPress pages and posts. Finally, you can choose to hide all the posts or one or more categories and only give access to specific user categories.

PrivateContent comes with simple options for setting up a login form for the users. You can add it using widgets, shortcodes or API functions (for developers). The CSS style of the form can be customized by disabling the default CSS and using your own. In combination with business website templates it will help you build websites where you can serve customized content to anonymous users, customers and employees. In addition, it is a cool plugin for photographers building a photography website to deliver photos for downloaf to a personal customer page.

The plugin can be installed using the default WordPress plugin installer. You can also install it by uploading directly into your FTP. You can start using the plugin by accessing the settings found in the dashboard menu.


ElegantThemes
ThemeForest

Advertisement Disclosure: Please note that some of the links below are affiliate links and I will earn a commission if you purchase through those links (at no extra cost to you). I recommend that you do your own independent research before purchasing any product or service. This article is not a guideline, a recommendation or endorsement of specific products.

Setup Categories, Users and Priave Pages

Once you installed Privatecontent you will find a new menu item in the admin area.

privatecontent-dashboard

User categories are needed before you create a new user profile. You can add it by navigating to PrivateContent > User Categories and filling up the fields under it. The User Categories section looks pretty similar to the default Categories interface of WordPress.

privatecontent-user-category

It is now time to add the user. The required fields include the name, surname, username and password. You also have the option to disable the private page for the specific user. The category you previously made can be seen on the right side. Choose the appropriate category and click Add User.

privatecontent-add-user

Importing and exporting the users is one great feature of this plugin. You can transfer the users from one of your website to another while maintaining the previous settings.

privatecontent-import-export

The private pages can be quickly built by adding a regular page and specifying it to be a private page under the PrivateContent settings (Settings > PrivateContent Settings).

privatecontent-settings-page

Creating a regular page as you normally do in WordPress

Once a page have been created, you can assign it to be used as the private page. When visitors navigate to the page you can set PrivateContent up to show a login form to anonymous users and the private page to logged in users.

privatecontent-private-page

PrivateContent settings for specifying the user’s private page.

Adding a Login Form

PrivateCotent allows you to build login forms for the users to login. There are 4 ways to add a login form into your current theme:

Widget Login Form

The plugin adds a widget upon installation that you can later use to create a login form to any widgetized area in your page. Just drag and drop the widget and you already have a working login form.

privatecontent-widget-login

privatecontent-sidebar-login

PrivateContent widget placed in a sidebar for the user to login.

Login and Logout Form Shortcodes

The plugin supports shortcodes. Just add the appropriate shortcode and you will turn the page into a login form instantly. You can also add your own content/ media to the page as it works like any other default WordPress pages.

privatecontent-shortcodes

privatecontent-shortcode-login

A sample page with shortcode login.

Inline trigger

You can also add a login form placed as a trigger when someone tries to access content without being logged in.

privatecontent-inline

inlinetrigger-sample

Sample inline trigger login form.

API Functions

This is for advanced users and developers. You can integrate the PHP code on any part of the theme.

User Registration

Aside from creating users, there is also an option to let visitors register as new users. Any simple Mmembership website would need to have this function. Customize the form fields from the settings area and set the category for this new users.

privatecontent-registration-form

You need to create a separate page for the registration form. Use the shortcode wizard to generate a shortcode for the registration fields. Publish the page and you’re done.

privatecontent-registration-field

sample-registration-form

Sample registration form.

For simple websites, PrivateContent is one of the best user and content manager plugins I have seen in the market. It adds content security and a whole lot of other features to your WordPress website. Membership websites would surely benefit from this premium plugin for its well built user management features, secure login pages and content protection. You can see a live demo of the website here.

Author : Lars Vraa

Lars is passionate about web design, web development, SEO, social media and loves to look into new technologies, techniques, tools etc. and to write articles for tripwire magazine readers.

{ 1 comment… read it below or add one }

Nola July 25, 2013 at 1:23 am

I’m not that much of a internet reader to be honest
but your blogs really nice, keep it up! I’ll go ahead and bookmark your site to come back later. All the best

Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

Previous post:

Next post:


Web Analytics