WordPress makes it incredibly easy for people to own a website and publish their own content, but it’s also had a massive impact on the web design and development industry. You don’t even need to be a developer to offer clients a customised, fully functioning website anymore.
This doesn’t mean WordPress puts developers out of the game, but it does open doors for designers who want to expand their skill set and offer a wider range of services. WordPress comes with a number of options that mean you can deliver complete websites to clients, no matter what your coding skills may be – and today we’re weighing up the approaches you have available.
Customising an Existing WordPress Theme
The most basic way to customise themes for your clients is to simply use an existing one and tweak it to their needs as best you can.
First of all, let’s make it clear that you’re well within your rights to reuse WordPress themes, as they’re published under a General Public License (GPL). This means the code is essentially there for everyone to view, modify and reuse. Content, images and other materials come with their own copyright baggage however, and even design work (CSS included) could be protected. So get familiar with GPL and other licenses, because your own work will be subject to them too.
Getting back to customisation, this approach generally works best with clients who want the cheapest option, above all else. The reason is because you’re highly restricted on how much you can customise, without creating child themes (which we’ll come to shortly). Which means you need to find an existing theme that’s almost identical to the finished product you have in mind – and then make the final tweaks through the CSS editor or a plugin.
Pros of customising an existing theme
- Easiest option if your coding skills are limited
- Also typically be the quickest option
- Caters to clients on a tight budget
Cons of customising an existing theme
- Many responsive WP themes don’t perform well across multiple devices
- Working with someone else’s code
- (Potentially) less tailored to your clients’ specific needs
- Could make you look like a less capable designer/developer
Tips for this approach
If you’re going to use existing themes and tweak the design then the first thing to do is be transparent with your client. Don’t let them think they’re paying for a custom-built site.
Next, choose a theme that is as close to the final design you have in mind, so the tweaks you need to make are minimal. Pay close attention to how the theme performs too, as you only have plugins to help you make functional changes at this point.
Customising a WordPress Parent Theme
If you’re comfortable working with code then you can take your WordPress customisation a step further, by creating child themes.
This is great if you have some basic front-end coding skills, but you’re not comfortable with complex PHP or databases. A good example would be an eCommerce site – you choose something like a WooCommerce theme that only needs a few stylistic changes and you can set your clients up with a fully functioning online store.
If you’re new to parent and child themes then take a look at this introduction guide, but there’s an important point to consider (one that doesn’t get mentioned enough). Child themes allow you to override and edit the functionality of a WordPress theme, giving you almost complete freedom to customise. They make this possible, but this doesn’t mean it’s the best approach to creating a highly customised theme – and you’ll see why throughout the rest of this article.
Pros of working with parent themes
- Allows you to override the design and functionality of a theme
- You can tweak existing themes to meet the needs of your clients
- WordPress can supplement the gaps in your coding skills, making more complex projects approachable
- All parent theme updates apply to your child theme
Cons of working with parent themes
- Parent themes typically come loaded with code and features you don’t need
- Child themes involve a lot of overriding existing code and functionality (resulting in even more bloated code)
- You’re limited to the amount of changes you can make before you impact on performance or increase your workload
Tips for this approach
Once again you need to choose your theme carefully and the aim is to avoid making unnecessary changes. Ideally, parent themes are better suited for projects where you only need to make minimal customisations, otherwise you’ll be adding way too much code, purely to override existing features.
When child themes first hit the scene they gave developers a world of freedom to customise themes and create entirely unique designs, while maintaining (or even adding) the functionality they needed. You can still do this with child themes, but there may be a better approach if you want extensive customisation.
Delving into Starter Themes
While parent themes come as a complete package, the more recent emergence of “starter” themes gives developers something closer to a blank canvas to start working with.
This means you get the bare minimum laid out for you, but with access to all (or most) of the features that come with WordPress. In terms of performance, the biggest advantage is cleaner code – you’re adding only what you need, rather than overriding what you don’t.
There’s another perk to starter themes though: they act as a great introduction to WordPress development, which makes them a strong option if you’re new to the game. There are some trade-offs, of course. Starter themes often come with some quirky features and patchy support, so you may need to try a few out before you find one you like working with.
Bones is one of the better starter themes you’ll come across and its focus on mobile-first design gets you off to a good start on keeping excess code to a minimum. It’s also responsive out of the box and comes with some tidy features – like SASS and LESS support, plus fallbacks for older browsers. The documentation from Bones couldn’t be more detailed either, making this a great starter theme to try out first.
You can learn more about how to use it in this Tuts Plus tutorial, but take the time to look at other starter themes too, if you like the idea of this approach.
Pros to using starter themes
- Fast development process
- You get the basics, but plenty of room to customise
- Your clients get a fully customised website, with all the perks of WordPress
- Cleaner code means better performance
- A good place to start the custom WordPress learning curve
Cons to using starter themes
- Theme updates do not apply to your custom project
- Support for specific WordPress features can vary
Tips for this Approach
Starter themes are a great option if you want to deliver highly customised sites without a negative impact on performance. You’ll want to try a few out though, because they can vary quite a bit and take some getting used to. But you’ll find many WordPress developers never look back once they’ve chosen a starter theme and Bones is always a good place to start.
Using Frameworks to Create Custom WordPress Themes
Frameworks are often confused with regular WordPress themes and it’s no big surprise – they’re actually very similar. They both share the parent-child theme approach to custom WordPress, but the difference lies in their template structures.
Any WordPress theme can act as a parent theme (note: this doesn’t always mean they should), but frameworks are specifically created by developers for this purpose. Frameworks are different from standard themes in the sense they are never a final product, but a starting point for the parent-child development process.
Unlike starter themes, though, frameworks come packed with WordPress features – often designed for specific purposes and ready to use right out of the box. You can think of them as a sort of middle-ground between standard themes and starters.
Pros of using frameworks
- Quality of code
- Flexibility – especially with Genesis and similar frameworks
- Fast development process
- Strong security and wide support
Cons of using frameworks
- Excess code (even if it is quality)
- Initial learning curve with each framework
- Some can be more limited than they first appear
Tips for this approach
Genesis is probably the most popular WordPress framework around right now and it’s got plenty going for it. It’s one of the better optimised themes for mobile and it’s pretty light as far as frameworks go. The first downside is the initial cost – you have to buy the framework to start with and then a child theme, which will cost you $100+ (£65 or more). Then you have to learn the hooks and filters of the theme and be prepared to settle for some bloated code.
If none of that bothers you – or you think you can make it work – then Genesis could be a good option for you. Many certainly swear by it, but don’t rule out testing a few other options before you commit to buying.
Building Custom WordPress Themes
If you want to offer your clients fully customised WordPress themes then the best approach will always be to build them from scratch yourself. This is the only way you get full control over your theme, meaning no excess code or unwanted features.
The obvious challenge is you need the coding skills to make it all happen, but the learning process isn’t as steep as you might expect. If you’re already customising themes or frameworks, you’ll be in a good position to start developing your own WordPress themes.
This tutorial video will give you an idea of the process and there are some great online courses and other materials to make WordPress development accessible to everyone.
The pros of developing your own themes
- Full control over design, code and features
- No excess code, which means faster sites and better performance
- Your projects meet the exact needs of your clients
The cons of developing your own themes
- You have to learn the full WordPress skill set
- Longer development time
- No theme updates, unless you do them yourself
- Your clients will have cheaper (albeit less customised) options available
Tips for this approach
In an ideal world this would be the best approach to creating customised WordPress themes. In terms of flexibility, control and performance this is certainly the way to go. The trouble is you need to be sure you can make it profitable, with clients who are willing to pay for the time it takes to make a WordPress theme from scratch. The good news is, if you have the skills to create your own WordPress themes, you can fall back on the other options for clients on a tighter budget.
So Which is the Best Way to Create Custom WordPress Themes?
The answer to this depends on a number of things – from your clients’ needs to the skills you have to offer them. If you’re a designer with limited coding skills you may have to focus on clients who can accept WordPress themes with a few tweaks – which is fine, as long as you’re honest.
If you have the development skills to offer each approach to clients then you shouldn’t have any problems finding jobs that pay a fair wage. You may even be able to pick and choose the projects that are most worth your while. The key point in this scenario is you can choose the approach that best suits your clients’ needs and make sure there’s a profit for you at the end of things.
Another important point to consider is your progress as a web professional. If you’re starting out with no coding skills, then why not start at the beginning with minor tweaks and offer more extensive options as your skills improve? With all the WordPress resources available, you’ll soon find developing custom themes from scratch isn’t as tough as it first seems.