Things To Consider When Using WordPress as a CMS
WordPress is first and foremost a blogging platform, but that doesn’t mean that it can’t be used for other things as well. In fact, the development of WordPress have been such that I wouldn’t be surprised to see a non-blog focused fork soon, because the necessary functionality for most web sites on the admin side of things are already there. I know, because I’ve installed and used WordPress as a content management system (CMS) for several clients the last year or so, and have had no complains yet.
“You’re crazy! Get Joomla/Drupal/Textpattern/something else instead!”
I would consider doing that, actually, if it wasn’t a fact that I know WordPress, can bend it to my will, and know that any necessary functionality I’d like to add is a mere plugin away. The fact that I’m using WordPress as a CMS for clients doesn’t mean that I don’t think that the other options out there, including TextPattern which intrigues me, are poor choices. I just know WordPress, and I know it is easy to use (as opposed to, say, Joomla) for not so familiar clients. Add a solid support for “static” content, being the WordPress Pages, and more newsy update flows controlled by the Posts, and you’ve got your needs pretty much covered for most websites online today.
Things to Consider when Choosing WordPress as a CMS
There are especially 3 things you need to consider before committing to WordPress as a CMS, and starting to plan it, as far as I can tell.
- Is the functionality needed covered by the WordPress core functions, and/or with the addition of (not too many) plugins? This is usually managing information pages (using Pages), and publishing news/press releases (using Posts). If I need to add a lot of custom stuff, including the custom fields, then perhaps it gets too complicated for the client.
- Is there a good translation of WordPress available, so that your client can get the backend in their own language? Why should my Swedish customers not have their CMS in Swedish? There is no reason, of course, and it is easy enough to install a language pack.
- Will my client be able to upgrade WordPress themselves, or do I need to make plans for this as well? This is true for most platforms out there, but nevertheless you’ll need to have an upgrade strategy.
The real issues present themselves when you’ve chosen WordPress as the CMS for your client project. That’s when you’ll have to think a bit outside the box, or not really, but at least peek over the blog focus edge at least.
Designing for Web Sites Powered by WordPress
In general, using WordPress as the CMS just means that you’ll design a theme as you would for a WordPress powered blog. Most of the things you need to keep in mind is what should be powering what on the site. For example, a company presentation should of course be a Page in WordPress, that way the company can edit it easily as well. With the 2.5 and 2.6 versions, the WYSIWYG editor is actually quite good as well, so there is no harm in this at all. Basically, you’ll use Pages for static content, just as you would on a blog, with the difference that Pages are your core content on the site, rather than posts, which is the core of any blog. This means that you’ll have to consider the Page hierarchy and presentation, possibly providing Page templates to control the layout a bit.
The front page of the website is another thing. These days, you can set a Page as the front page by visiting the WordPress settings (as opposed to the hacks of yonder). This is probably necessary for most traditional websites, so you’ll want to do a Page template for this particular front page Page as well, and make sure that the minimal (if any) editing that can be made from the WordPress backend should be used with caution. Breaking a front page isn’t a good thing, you know, and chances are there’s more than just text and a few images to manage, so keep the advanced stuff out of the editable part, putting them in the Page template instead.
Finally, there’s the updates, usually being company news or press releases or something similar. This content can easily be managed by using the Posts in WordPress, assigning a category for news, press releases, or whatever. This way you can have a page on the site (incidentally a Page in WordPress as well) that displays the content, and then link people to the category, possibly controlling it a bit by tweaking the category template. You could even bypass the page listing the content mentioned above, and just link the categories from the menu.
Speaking of the menu, chances are you can forget about using the WordPress functions to display Pages or categories, since that would and could mean that your client can break the design by accidentally creating un-necessary Pages or categories. I usually just put these links in the theme, and if they want to add a main category they’ll just have to contact me to do an edit. I do, however, try to make sure that adding sub-pages (i.e. Pages belonging to other Pages) will result in decent linkage on the mother Page, much like I’ve done on my fiction page over at tdhedengren.com.
Another thing you need to think about is what user priviligies your client will need to have. Sure, someone at “their side” needs to have admin priviligies, but that is probably not the general one needed. You need to consider this as well, as it is probably you that will be setting it up, and you don’t want the client to break the settings accidentally.
Checklist for Creating Web Sites with WordPress as the CMS
These are the things I tend to think about before choosing and designing a website where WordPress will be used as the CMS. There’s probably other things as well, things I just haven’t take into account since my clients haven’t had that kind of need yet. Feel free to add yours in the comments, sharing is caring after all.
- Is there even a need for a CMS for the client?
- Is WordPress the correct CMS? Will it fit the needs? Is the translations available for the WordPress backend good enough? How will it be upgraded?
- Will I need to extend WordPress using plugins? Are any hacks to the core necessary, because if they are, how will I make sure that these won’t break when the core is upgraded?
- What types of content will there be, and what should be deemed static (i.e. use Pages), and what is flowing updates (i.e. Posts)? How will I present this, and what is the main type of content?
- How will the permalink structure be? Should it really say “category”, why not “view” or “updates” or something else?
- Will the menu be static (i.e. coded into the theme) or controlled by WordPress (i.e. listing using WordPress tags for Pages and categories)? How could this go wrong in the future?
- What hierarchy will the Pages have? This is important for the URL, since it should be coherent with the menu hierarchy after all.
- How will I present sub-pages (i.e. Pages having a mother Page)? Should there be any at all?
- Do I need Page templates for various sections? How will these work with sub-pages?
- What categories will I use? Should the client be allowed to create new categories?
- How will I present Posts content?
- Do I need category templates for the various categories?
What is your experience with WordPress as a CMS, and have you anything to add to the list? Share in the comments.