I want to use WordPress as a CMS for a reasonably basic site rather than a blog. I have several pages and at the moment, I don’t intend to have a “news” page.
While there are ways to make this work, the focus in the wp-admin console is clearly on new posts, and creating pages with custom content like maps and galleries feels like I’m working around the system rather than with it.
Do you have any suggestions as to using WordPress as a CMS?
- Are there any good boilerplate themes that are designed around a CMS rather than a blog?
- Are there any good plugins to help with treating WordPress as a CMS?
Alternatively, should I be using WordPress at all?
The killer feature that caused WordPress 3.0 to cross over from an extensible blogging tool to the CMS for 8 out of 10 needs is Custom Post Types (with the addition of Custom Taxonomies from v2.9) with an honorable mention going to the new Menu system in 3.0.
So if you want to learn WordPress as a CMS then study Custom Post Types. Here’s a few articles to get you started:
- Custom post types in WordPress
- Rock-Solid WordPress 3.0 Themes using Custom Post Types
- Everything You Need to Know About WordPress Custom Post Types
- Custom Post Types in WordPress 3.0
- The WordPress Codex on Custom Post Types
- Adding Custom Field GUI to Custom Post Types in WordPress 3.0
- Explore the Power of Custom Post Types to Maximize WordPress as a CMS
- Smarter Custom Post Types
There are also several plugins to make Custom Post Types easier in no particular order and albeit all of them are still a long way from being fully mature so Caveat Emptor!:
As for Themes, that’s a different subject. While blog themes all implemented the same use-case pattern, each person’s CMS needs are likely to be different because each business is different (a restaurant needs different layouts than a yoga studio than an movie theatre than a fabric store.) At least early on I think you’ll be hard-pressed to find the perfect ready-made “off-the-shelf” theme for your business; best to find one that’s generally good and plan on modifying it or get a WordPress designer to build you a custom one. Having them layer on top of themes like the Genesis Framework from StudioPress can be a good option.
Best I can suggest is to look for ones that support the WordPress 3.0 menu system and then make your decisions from there. You can google for that and look for articles like this one:
P.S. If you are asking about streamlining the admin user interface so that the Posts and Pages and other blogging tools take a back seat and your specific CMS content is featured in the admin instead then that’s a different subject; can I suggest you ask another question for that one?
UPDATE: Here are some screen shots from some projects I’m working on to give you an idea of what can be done:
If custom post types are too hard to manage for you
Take a look at the famous “pods” plugin. it has a lot of Killer features and there’s some “add-on” or child plugin called “pods ui”. Pods itself allows you to add any sort of table(s) to your DB. It also allows linking them to existing wp DB tables. So if you want to (for ex.:) extend the data saved with an user, you just add a pod named ex. “extended userdata” and link it to existing user data. That’s it. “Pods UI” then allows you to make a nice user interface with close to no effort.
Both help you to easily manage and build everything you might need. All of the developers are more than just nice, they have a perfect forum and you can meet them nearly every day in their irc-chat room. I build myself two pretty large sites for managing events plus the whole background organisation and i’m still impressed how good it is performing even when you got hundreds of visitors at the same moment. 🙂
I sympathise. In fact, I asked a related question over on webmasters. I’m not sure about themes or plugins, but there are some useful links there.
I’m still at the early stages of using Wordpress as a CMS, but my advice so far, for what it’s worth, is:
- Read as much of the function reference as you can, in order to really understand some of the inner workings of wordpress
- Explore custom posts and custom fields
- Understand that you can do quite a bit just by including Pages – just as you would in any CMS or basic system in which content is shared
Firstly, WordPress is still great for small(ish) sites whether or not they make use of a blog section. It’s easy to use, easy to find help with, and of course there’s the scope for easily adding a blog if it’s needed in future.
If you’re trying to set up a gallery you have a few options. You can use the built-in gallery as it is, use the built-in gallery but install a plugin or edit your theme to format it differently, or you can use a totally seperate gallery plugin.
Alternatively there are a lot of themes out there geared towards a certain type of site, be it portfolio or photography or whatever sort of site you’re looking for. I’d recommend a look around places like Theme Forest.
As mentioned in previous answers, Custom Post Types are definitely worth checking out, especially combined with the WP Easy Post Types plugin. However, I would still recommend giving the Magic Fields plugin a look over as it offers some extra custom field options that can be quite useful. I can see WP Easy Post Types improving and making plugins like Magic Fields unnecessary though, but it’s still worth checking it out. One thing to be aware with Magic Fields is that it does store images in a different location than the standard uploads folder which is a bit of a pain and definitely an area where custom post types wins.
We’ve been using WordPress as a CMS for my university for over a year now:
It’s definitely very usable for smaller sites that have few editors. Some of the issues you may run into with larger sites, not all of which we have resolved yet:
- Customization for individual groups/users. We are using the WordPress Network feature to give individual blogs to different departments/groups, allowing some settings to be set per-group. We also developed the 9spot plugin which replaces layout via templates with layout via widgets, giving each blog the ability to set custom columns per page type, category, etc. in the dashboard.
- Development vs. production instances. With our old CMS, you could edit content and push to the development server to check things before they went live. We have less ability to control content at this level in WordPress, and it’s a little cumbersome to move content between the dev and prod instances. Likewise, many settings (i.e. widgets) are hard to move between servers.
- Locking down content. Aside from creating a new blog, we can’t lock down editing privileges to a specific subset of users. We’d like to extend editing privileges to specific pages to individual users or user groups.
I think it’s all resolvable with enough development time and/or third-party plugins, but those are some things we’re struggling with out of the box.
The best way for me is to set up a small site, fast and specialy for the requirements of the customer. Also i reduce the backand only for the view, how use the customer, less ist more. Also i write small plugins and use not great “click and do” plugins, maybe for custom post type, write this in a solution for the customer. For reduce the backend i use own source or the plugin Adminimize. I check hte install also for functions, she comes from the core and maybe she is not important or necessary. I deactivate this functions, as example the feed.
I find that there are 4 really nice plugins that instantly turn my site into a nice CMS;
- More Fields
- More Taxonomies
- and Custom Post Type UI
I then use Gravity Forms for user-input and then one just needs to add the structures and make it pretty!
IMHO WordPress is already more CMS-platform than blogging-platform.
By the result of surveys in 2011 users uses WordPress:
- as just a CMS – 61%
- as blog & CMS – 31%
- as just a blog – 8%