Before I get into the details of the things you need to know, I want to make sure that we’re on the same page when I refer to a WordPress Theme Developer (there are a lot of titles for this being thrown around and misconceptions which I will elaborate on in another post)
Did you know that WordPress is powering 26% of the web?! If you want to learn the ins and outs of WordPress, now is the time!
Helpful Resources
There are a plethora of resources out there and trying to find exactly what you need can be daunting because finding quality resources is difficult. Once you start to familiarize yourself with the codebase you will start to be able to weed out the not so helpful sites.
- WordPress Codex – The WordPress Codex IS your best friend while you are developing themes, if you see a WordPress function and don’t know what it means – Google it first and 9/10 times you will get a link straight to the codex with the function and its uses
- WordPress Books – I have read through so many books about WordPress Development over the years, the books I have now are actually outdated but the fundamentals of building a theme have not changed. One of my all time favorite and go to books is by Smashing Magazine – Smashing WordPress: Beyond the Blog and also Apress Pro WordPress Theme Development
- WordPress Blogs – When I first started to get into WordPress development, one of my go to sites was Envato Tuts (WP tuts back when I used it) and I still highly recommend them to this day.
- WordCamp – The tracks that they have at the events are well worth the money, and not to mention the swag that you get! There are so many WordCamps I am sure that there is one within driving distance in your area. You won’t be disappointed.
- WordPress coding standards – When you start making themes or plugins, this is a good guide especially if you plan on submitting your project to WordPress directory.
What about just using a WordPress framework instead?
If you really want to learn how to develop a theme from scratch then I do not recommend this route. These frameworks come with their own structure for building a theme and you would have to get used to the way someone else wrote the code and try to understand why they did things the way they did. I think it is super important to learn how to actually make a theme from scratch. So that in the event you have to work with a framework, you won’t be lost – you will know where things are etc.
For the record I am in no way against frameworks – I personally don’t use them, I have tried and it just was not for me. I ended up making my own framework which I have been using for a few years to get my projects started.
Things that you should already know
There are some things that you should already know that will help to accelerate your WordPress development journey otherwise you will just be frustrated, I know this because I have been there many years ago when there wasn’t the abundance of resources like we have available today.
- HTML – Fundamentals of a webpage, writing valid HTML is important to making sure your theme functions correctly.
- CSS – This is a huge part of a WordPress theme,
- PHP – WordPress is built on PHP so it would be necessary for you to know this language if you want to do more than make CSS changes
- JavaScript and jQuery – There are certain things that you will want to use in your theme, for example a scroll to top and you will need JavaScript to do that. You want to make themes that are not only useful but also fun.
- How to install WordPress locally
- Git – you will thank yourself later
- Text Editor or IDE
If you don’t know the very basics here are some recommendations
Start with the very basics
- CodeCademy and Treehouse have great beginner courses on HTML and CSS. Get familiar with this first before you step into learning any programming languages like JavaScript or PHP.
- Make yourself comfortable with Chrome Developer tools and using the inspector to make changes to your website.
- Install WordPress locally on your computer
- Get yourself familiar with PHP code specifically variables, functions, arrays, logical operators and objects. You will see these a lot while developing your custom theme. Treehouse and CodeCademy have great tracks covering the basics for PHP
- Also familiarize yourself with JavaScript for the front end – once again Treehouse and CodeCademy will have resources for you to learn this.
If you don’t have a text editor or know which one to use, I would like to recommend Atom works on PC, Mac and Linux
This is no way sponsored by any of the links in this blog post, this is my honest guide of things that have worked for me, that I hope you will find useful as well.
Image: Unsplash