I’ve been spending a good amount of time in WordPress lately – with two projects in particular really testing it’s capability as a full content management system. Since WordPress reached what we might call ‘full maturity’ with version 3.0 back in June 2010, it has become an incredibly powerful system – not just for blogging but also for running websites as a full CMS.
The introduction of custom post types and custom menus meant that pretty much anything was possible within an extremely flexible framework. There are dozens of plugins that really help extend WordPress and give developers greater control over content and how it is managed. I’ve come to rely on 3 or 4 that range from the super simple to implement to the slightly more technical – but certainly usable if you have some PHP knowledge.
This first one is a biggie. Custom post types allow you to turn regular wordpress posts into database entries for whatever you like. I’m working on a property portal website – so a ‘property’ becomes a custom post type. Each property might have property details, a photo gallery, a google map, and so on … by creating a custom post type I can then add whatever fields I want – in a variety of different formats (e.g. check boxes, drop down lists, text boxes, and so on). You might have a field for ‘number of bedrooms’ in a property portal … well, ECPT allows you to easily create a drop down list so you can select the number of rooms. Good stuff.
The plugin is developed by Pippin Williamson and is well supported too – frequent updates extending it’s capabilities. There are also a number of cheaper add-ons that give you even greater control over the post types, and associated taxonomies.
Advanced Custom Fields is a plugin that plays extremely nicely with the ECPT plugin above. What it does is takes one piece of functionality from ECPT – creation of custom meta fields – and makes it prettier, more usable, and adds a ton of functions to it. Most of what can be done with ACF can also be achieved with ECPT – but not as readily, and not as smoothly. ACF allows you to create groups of fields for your custom post types – and adds some significant benefits as well.
In creating a website for an events company, we used the ‘repeater’ field type to easily create event pricing schedules, event agenda, as well as speaker lists and talk topics. The list of field types you can create is greater than in ECPT – with colour pickers, date pickers, and the like making it incredibly flexible. The image below shows some of the fields involved in the custom post type of Events. You can see how we have a Date Picker for the event date, regular text in there, a repeater field for event timings, a full WYSIWYG editor for event description, some images associated with the event … and so on. All of this generates hooks for you to add code in your template to pull out the information.
WordPress SEO is, simply put, the best SEO plugin available for WordPress. At a very basic level, it allows you to set custom page titles and meta descriptions on a page by page, post by post, basis. Then, for each piece of content you generate, you can assign a ‘focus keyword’ – so if you want your page to be targeting a specific keyword or phrase (yes, you do want this), you can use a simple tool to determine whether your page is well set up for that phrase. The plugin will help you find associated key phrases that you may also want to work into your content, will help you analyse the page itself – and essentially gives you all the tools you need to control how you show up in google’s search results.
Add to that the ability to set custom defaults for different categories, taxonomies and custom posts – and there’s more here than you’ll ever need.
If you run a wordpress powered website and are concerned about search traffic, then you should be looking at this plugin. In recent releases there are a few bits that irritate – such as the automatic customisation of your Posts list with SEO scores and such, but these can be hidden easily enough.
Posts to Posts is perhaps for the more technically minded developer out there. It’s a remarkable little plugin notable for it’s simplicity and effectiveness. It provides a mechanism for you to create connections between different types of content. So, again, in the events website we’re working on – we can quickly create a connection between an event, and an agenda. Two different custom post types that, previously, could not be connected in the WordPress interface, now can. That connection allows me to pull in event information on the agenda page and agenda information on the event page. Simple.
It doesn’t stop there though – you can create relationships between posts and users, users and pages, and so on … any piece of content in wordpress can be connected to any other. Without this plugin, I’d be crying quietly in a corner somewhere. Actually, Pippin’s Plugins has a nice write up of it here.
Like I say, it’s a bit more technical – not for your casual wordpress user, but it is hugely powerful.
Other plugins that have been useful, but might fit into the more day to day aspects of running a wordpress site include …
- Duplicate Post plugin – does what it says on the tin. You’ve got a post, you want another one to be based from it – this is the plugin for you. It also works with custom post types, and will duplicate all child posts as well in one click, should you so desire. Invaluable.
- Contact Form 7 – it may not be the most easy to use contact form manager for wordpress (by all accounts, that’s Gravity Forms), but it is free, it is powerful, and it has become my default ‘go to’ form manager.
- Role Scoper – this really helps with multi-user wordpress installations, giving you the power to define permissions for editing content on a user by user, post by post, category by category, basis. I built a corporate intranet for 200 employees using this – and it worked like a charm!
So, that’s it … if you’ve any other essential wordpress plugins you’d like to share – add a comment below.