Wordpress User Directory: Part Three

It’s the final day of my guide on how to turn Wordpress into your own user directory.  I’ll start today by recapping what we have done so far.

  • Created our profile page templates
  • Added custom fields
  • Installed the correct plug-ins for the basic settings
  • Hidden un-used fields.

If you have missed any of the days, or wan to recapp, you should read the following posts:

So, we know where we left off, but what are we going to cover?  Today we will try to streamline and optimise the whole process, creating a minimal maintenance set-up.  In order to do this we will:

  • Change the URL of the profiles
  • List all of the users on one page
  • Hide the Dashboard
  • Have an auto-mated email send to new members
  • Generate profiles for people who have not posted
  • Get more control over what users can do
  • Track what users do

Change the URL of user profiles

Changing the URL of the author profiles is a very easy job, one which will take us only a few seconds.  Simply download and install the Customer Author Permalink plug-in from the Wordpress repository.  Once you have done this go to Settings –> Author Permalink and change the Permalink to whatever you like.  If you were to change the permalink to member as I have the admin profile would then be located at [yoururl]/member/admin.

The Custom Author Permalink Settings Page

The Custom Author Permalink Settings Page

List Authors on a Page

It does seem a little pointless having gone to all of this work if we are not going list all of the member on one page and then link to their profiles.  Don’t forget that only users that have posted a post on the Blog and made a page will appear, but don’t worry we will solve this problem later on.  The first thing we need to do is create the file, in order to do this make a copy of page.php from your theme folder and add the following right at the top of the file.

/*
Template Name: List of Authors
*/
?>

This simply declares the file as being a custom page template called “List of Authors”, giving us the ability to create a page using this template that will list all of our authors. For the next stage I have added two separate code snippets below. Simply add the second snippet just before the first, the first should already exist in your new file as a line of code.





Now save this file as authorslist.php in your theme folder. You can now login to your Wordpress control panel and add a new page, using this newly created page template. In order to do so navigate to the new-page panel and then select the template as shown below from inside the “Attributes” box.

Selecting our new authors template

Selecting our new authors template

Role Manager

Role Manager is another good plug-in to play around with if you are going to allow members of the public to create an account with your website.  This plug-in will allow you to customise what the users can do.  It allows to to take away and add user levels, each with it’s own unique abilities to do various things.  On top of this it will also allow you to customise the settings for individual users.

Show Authors Without Posts

In order to show all users, you will need to install the “Show Authors Without Posts” plug-in. This plug-in is not intend for quite the job that we are going to use it for, so once you have installed it you will need to change the default role for new member to author, and then use the Role Manager plug-in (detail below) in order to change what an author can do.

Audit Trail

Audit Trial is a very useful plug-in for some people, it will track exactly what every logged in user does and when they do it allowing the administrator to trace every move of the logged in users.

Audit Trail is a plugin to keep track of what is going on inside your blog. It does this by recording certain actions (such as who logged in and when) and storing this information in the form of a log. Not only that but it records the full contents of posts (and pages) and allows you to restore a post to a previous version at any time.

To summarize:

  • Log of user actions inside your blog – useful for finding out who did what in a multi-user system
  • Post/page revisions and restorations – every change to a post or page is recorded and can be instantly restored to a previous version
  • Differences are shown graphically
  • Extensible, allowing other plugins the ability to add and display items in the Audit Trail
  • Ability to track registered user page visits
  • Fully localized

Conclusion

Now, you should have a fully functioning Wordpress powered user directory.  This is all good, but you are now building you own online community, and so there are a few things you should consider.  For example, how are you going to back-up your database?  You lose that and you have lost your entire community.  You should should also monitor the activity of other all users.  You need to know which pages are the most popular, so you need a statistics plug-in like the one I reviewed the other day.

Further, what about SEO (Search Engine Optimisation).  How are you going to publicise you directory?  How are you going to develop it?  These are all important thing to consider.

If you need any help or support with anything in here please feel free to comment below and I will do my best to get back to you as quickly as possible.

2 Comments »

  1. Comment by james — 27 January 2010

    Hey!

    Thanks for the tutorials, but..

    In section 2 and 3 you are missing out the code in quite a few places e.g.

    “This simply declares the file as being a custom page template called “List of Authors”, giving us the ability to create a page using this template that will list all of our authors. For the next stage I have added two separate code snippets below. Simply add the second snippet just before the first, the first should already exist in your new file as a line of code.

    Now save this file as authorslist.php in your theme folder. You can now login to your “

  2. Daniel Groves

    Comment by Daniel Groves — 2 February 2010

    @James Thanks for pointing that out. I will go through and fix it tonight. It is caused by a plugin misbehaving. I will ensure it is fixed ASAP for you!

RSS feed for comments on this post. TrackBack URL

Leave a comment

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>