Some developers have tried to paint WordPress as a great blogging platform, but not a “real” CMS (content management system). While most professional WordPress developers don’t agree, the lack of custom content types has been a continued weakness of the platform.
Who needs custom content types? Let’s say you’re building a site for a real estate agent and you want to have standard blog/news posts on the site, but you also want an area where homes for sale can be listed with custom fields like square footage, number of bedrooms, etc.
Prior to 3.0, you could tweak post records and create different categories and tags for news/blogs and houses. But data entry still goes into the same place and still relies on users knowing which boxes to fill out for which types of data. You could do it, but it wasn’t pretty, and was prone to errors if your data entry wasn’t precise. It also created issues if you want to exclude the new house listings from the RSS feed of the blog. It could be done, but it took some work.
Now, with WordPress 3.0 you can create custom post types. (If you’re a programmer, think of these as custom data tables.) Each custom post type can have it’s own entry screen, display templates, categories and tags.
In the real estate example, you can now have a menu item on the admin menu that says “Add House”. That link will take you to a dedicated input screen with all the house data, and nothing else. If you add a blog post through the regular posts screen, it won’t include any custom fields for the houses.
Nice, clean, easy data entry. Much harder to make mistakes that cause data to pop up in the wrong place.
Now you can build custom post types (they should be called custom data types) for your client portfolios, member directories, success stories, and all the other custom content types we have been cramming into customized posts in prior versions of WordPress.
With custom post types, WordPress can now honestly be considered a “real” CMS. When added to WordPress’ existing strengths such as easy of use and huge support base, it makes WordPress a serious platform for developing any type of web site — not just blogs.
If you’ve been hesitant to use WordPress because it couldn’t handle custom data types, it’s time to look again. If you have a WordPress site with several types of posts and custom fields, it may be time to upgrade to 3.0 and clean up your site structure. It will make your site easier to manage, simpler to code, and much easier to expand and enhance. Check it out.

Tuesday, Sept 14, 2010