Using WordPress as a CMS

Posted on 13. Apr, 2009 by in Archive

wordpressasacms

A couple of years ago if I’d said WordPress would make a great CMS, you’d have probably thought I was totally mad! These day however, when you need a simple CMS WordPress is a brilliant option. In this post I’m going to show you how to make your wordpress CMS even better with some simple bits of code and some not so simple plugins.

Customising the navbar

First thing we can do is display pages on the navbar instead of categories. We can do that with the following code, creating an ordered list:

But you won’t always want to display all your pages, so you can be picky and exclude certain pages by finding their IDs:

[xml]
<ul>
<?php wp_list_pages(‘exclude=pageid,otherpageid’ ); ?></ul>
[/xml]

Or maybe you’d like to display pages based on date?

[xml]
<ul>
<?php wp_list_pages(‘sort_column=post_date&show_date=created’); ?></ul>
[/xml]

Source – WP Codex

Flutter

Flutter is a WordPress plugin that will transform your site into a fully fledged CMS. What does it do? Check out the flutter release page for the complete low-down, but in a nutshell it allows editing of posts without leaving the post page,
gives you ‘custom write panels’ that give you more options besides post and page. It also has phpthumb built in for ‘powerful image manipulation’.There are a couple of videos running through the features on the plugin’s microsite, so check it out!

Manage what users can/can’t do

Something that is essential in any CMS is the ability to manage users. Whilst wordpress has basic user management built in, you can extend it further with the Role Manager plugin. What this allows you to do is precisely manage your users: the options are huge! The screen below is from one of my sites, Nometet.com, where I use the plugin.

rolemanager

Using page templates

Page templates allow you use a custom template in pages, a really useful feature – you can integrate Google Custom Search for example. How do you create a page template? Open up your editor (ie Notepad) and add the following code:

[php]
<?php
/*Template Name: whatever you want your template name to be */
?>[/php]

With that at the top of the page, you can add whatever code you like below.

To use your new page template, upload it to your theme directory and go to the page editor, and under attributes find your template. Done.

Display a page as homepage

Another essential CMS feature is the ability to display static pages as the homepage. Once you’ve created your page, go to ‘Reading’, under the Settings tab. Select the option ‘A static page’ and then select the page you want from the drop-down menu. Done.

Permalinks

Something that you should do anyway for SEO’s sake, but is also a nice CMS-like feature is change your permalinks. Again under settings, select ‘Permalinks’. The WP Codex has a list of all the options you’ve got, but I’d go with /%category%/%postname%/ or /%postname%/.

And finally

In this post I hope I’ve given you a couple of pointers and ideas to make wordpress your CMS of choice, but there is a lot more you can do besides! Stay tuned for a WordPress-as-a-CMS theme coming soon!

Additional reading

Chris Coyier’s screencast on the topic, for CSS Tricks.

Creating page templates – WP Recipes

WP Codex – Pages

Tags:

Follow on Twitter! Subscribe!

WPShout is hosted by the fine folks at WPWebHost.

You can get exactly the same hosting as WPShout has for $7.95/month with WPWebHost's Freedom Plan.

Plus get 30% off the Freedom Plan with the code WPSHOUT.

Visit WPWebHost

Alex's Gravatar

Alex Denning is the founder of WPShout. A WordPress developer from London, Alex is a keen musician and freelance writer and developer.

You can find Alex on Twitter.

23 Responses to “Using WordPress as a CMS”

  1. Amy Christensen

    13. Apr, 2009

    Nice post! You've got some great tips here. I've set up blogs in WordPress and have been tossing around (but was still a little uncertain about) using it as a CMS for some of my website clients. Main question: If a client is going to have a WP blog as well as a site, would you suggest setting up their blog separately (and link to it) or incorporate it into their main WP website? If the later, how do you suggest managing this all within one WP site?

    Reply to this comment
  2. choen

    15. Apr, 2009

    nice post… thanks..

    Reply to this comment
  3. Patternhead

    15. Apr, 2009

    Interesting post, thanks.

    I really need to get my head around the role management in WP. I have an art group site that runs on Textpattern and I'd love to move over to WP and allow members to take care of their own pages.

    Reply to this comment
  4. goofydg1

    15. Apr, 2009

    I use WordPress as a CMS for many of my clients. Works great. With the proper set of plugins you should have no problem.

    Reply to this comment
  5. Tim

    15. Apr, 2009

    Thanks for this post. I love using WordPress as a CMS. I haven't had much luck with Role Manager though, didn't seem to work right.

    Reply to this comment
  6. Hirvesh

    22. Apr, 2009

    Loved your post. Keep up writing those articles..they are great.

    You might want to check my own WordPress articles:

    http://codefusionlab.co.cc/the-9-most-useful-word…

    Reply to this comment
  7. mediatechno

    27. Apr, 2009

    i think is very useful information . thank you

    Reply to this comment
  8. GreyGoose

    20. Aug, 2009

    WordPress is an excellent blog builder, but if you want to create a website for your clients there’s an even better free tool called ModX – do all your design in your favourite web-editing tool, no php knowledge required, no cutting up the page and saving it as something else, just paste your HTML into the new template box within MOdX, with the right content commands etc, as per the supplied sample, upload your CSS and images and job done. Also in it’s favour, the default admin pages look like they’re aimed at adults not children.

    Reply to this comment
  9. Jim Pohl

    28. Sep, 2009

    Hi Alex,

    I’ve written a standard text in HTML. I’m looking to present it in a CMS. I haven’t
    seen a book done that way. Might you know of one (or some).

    Please look at my site. There is a lot of work there. The work needs to be “indices-sortable.”
    Categories, I guess. Anyway I need advice and help.

    Thanks, Jim Pohl

    Reply to this comment
  10. Steve

    06. Feb, 2010

    Hi,
    Great post. I am completely new to WP – where do I put the code for the navbar?
    Thanks,
    S

    Reply to this comment
  11. vadepaysa

    11. Apr, 2010

    Honestly, don’t do it.

    DO NOT USE wordpress as a CMS. WordPress is excellent blogging engine and that’s about it.

    I am writing this out of experience. I too was super excited about using WP as a CMS, because it was working so well on my blog. ALl the plugins, themes, awesome!

    BUT, I did a terrible mistake when I decided to use WP as a CMS for a huge non-profit org.

    I bravely installed WP thinking I will hack in anything I want, but,
    they had such dynamic requirements to the page content and such complicated user access rules that every change they wanted meant hacking a plugin or tweaking php of my theme which took hours together.

    This drove me INSANE!

    And to my rescue, came my age old friend, Drupal.

    Drupal is a CMS
    WP IS NOT

    WP is an amazing blog platform.

    Please use caution, please learn from my painful experiences.

    Reply to this comment
  12. AlexDenning

    13. Apr, 2009

    These days most sites will go for using two installations – one at the root the other at /blog/ or whatever, but if you\\'re clever about it there is really no need – use pages for your static content and posts for your blog posts.

    If you set the homepage to be a page (and add it to a custom page template for extra customisation) and not latest posts, you can display the latest posts in the sidebar or whatever and do it that way.

    You could set the permalink structure to /blog/ so posts have that structure, whereas pages will just be /. The possibilities are endless; let me know how you get on, and, of course, it\\'d be lovely if you could subscribe to the ol\\' feed!

    Reply to this comment
  13. Amy Christensen

    13. Apr, 2009

    Thanks, Alex! Your first option was what I had been planning, but I might try setting it up differently now. Thanks again!

    Reply to this comment
  14. hal9000

    06. May, 2009

    you need wordpress mu and buddypress . probs the best combo for that.

    Reply to this comment

Trackbacks/Pingbacks

  1. [...] the original here: Using WordPress as a CMS | Nometech.com « VN Idea Design » Free WordPress Theme – Fresh Blog 4 WordPress Design | The NFL, Drug [...]

  2. [...] Using WordPress as a CMS [...]

  3. [...] more here: Using bWordPress/b as a bCMS/b | Nometech.com This entry was posted on Monday, April 13th, 2009 and is filed under WordPress News. You can [...]

  4. [...] Using WordPress as a CMS – (Artikel von nometech.com) [...]

  5. [...] via Using WordPress as a CMS | WPShout.com. [...]

  6. [...] Using WordPress as a CMS | WPShout.com (tags: wordpress cms tutorial plugin hacks) This was written by andy. Posted on Monday, April 12, 2010, at 1:03 am. Filed under Delicious. Bookmark the permalink. Follow comments here with the RSS feed. Post a comment or leave a trackback. [...]

Leave a Reply

Please use your real name when commenting. Wrap code in <code> tags and make sure HTML is encoded. You can use regular HTML like <a href="... etc.

Get yours questions answered quicker

If you're using this post for paid work and have a question of any complexity then please ask at WPQuestions where you'll get a prompt response.