I am busy going through the pains of re-designing my site to be more appropriate for future plans and in doing so I was initially struck by the idea that I should change CMS to something like Joomla or Drupal. I actually gave it a bash for a few hours….I set it all up, tweaked a few things, tried to get everything just right and then realized that I hate Joomla and it’s rubbish! Now by rubbish I don’t mean it’s crap…it’s a darn good CMS, it’s just rubbish for my intentions.

I also gave one of the new competitors, Concrete5 , a bash which on first impression, seemed pretty good. It had all the plugins you would need to satisfy current social media integration within your blog and seems aimed at designers, which implied that it should be simple to use and capable of crafting impressive UI’s. It’s actually a bit old school in the sense that one drags components around the screen to place everything but it was precisely this technology which I don’t like. I don’t like “designing” each page in isolation. I like to spend hours and hours configuring post or page categories and then use clever tools which derive menu’s from the category hierarchies and then apply page bling across the whole thing.

To cut a long story short, WordPress has it’s quirks but I am used to it and as of 2009, it actually beat Joomla for the top spot in the Open Source CMS awards, so not only is WordPress being considered more than just blogging software but it’s actually considered the best CMS software at this moment and I fully concur with this.

Back to the tips and tricks…

In WordPress you can only have a single dynamic page of posts. You can create static pages for things like “About” and “Contact” but you can’t actually post to them. This posed a problem for me because I am trying to use WordPress as a CMS with a complex and hierarchal menu structure comprising dynamic pages which contain posts pertaining to those sections. The answer lay in post categories and the particular theme I am using. What I did was first replicate the menu structure I wanted as post categories, including any hierarchies. This is one of the great things about WordPress.

Then once those were set, one can setup the menu using the provided menu editor for this particular theme. The cool thing about this custom menu is that you can point the items at pages, categories or custom links.

The resulting menu looks like this:

So at this point, we have a set of custom post categories defining how we want our content to be structured and a menu structure linked to both the categories and some static pages. The purpose of this exercise is so that when we create a new post and specify that it is in category x and y, then WordPress will add the post to menu item x and y and effectively dynamically generate different pages for us based on the the category of the post.

Post Categories

Post Categories

The use of the categories will also allow us to use the category sidebar widget to inform the user of both the nature of the posts but also to provide a post count and rss feed per category.

The menu item that matches the post category will now contain posts within that category such as the example below which contains a single post in the “Fun and Humour” category.

Hope it helps your WordPress en devours :)