A custom WordPress theme is a great way to deliver a high quality website for a client. Right out of the box you get features like posts, pages, categories and a media library. Another great advantage is the fact that a lot of people build stuff for WordPress in form of plugins or snippets you can use to cut down costs and save time.
My usual experience when starting out a new theme can be broken down into several steps:
- Analyze the theme design (it can be either a complete graphic solution or just wireframes)
- Make a strategy about how to integrate it with WordPress
- Start the foundations for the theme (initial file setup, template placeholders and get the core WP features working)
- Build the theme specific features (custom post types, option fields…)
- Write the stylesheet and JS features
- Review, debug and if all good ship it
So my process is pretty straightforward and repeats for every theme. After going through the same process multiple times I was thinking about which step could be optimized.
The third step, the foundations step, was the most obvious answer at the time. Because every time I had to setup the same files, that aren’t theme specific, but are the same for every theme (at least in the way I build them).
That is why I have created WordPress Boilerplate. It is supposed to save some time (around 1-2 hours) when starting out a new WordPress theme. The idea was to strip down markup to the bare minimum, get the WP loop working and prepare the most commonly used template files. So when I start a new theme I can just skip step three.
WordPress Boilerplate is available on Github.
Hope it helps. Feel free to get in touch if you want to discuss my approach or just chat about WordPress custom themes.