Course: WordPress Theme Development (Core Concepts)

person learning wordpress theme development

Welcome! WordPress themes are one of the most important topics that one must understand to be good at WordPress development. Themes underlie the entire visual half of WordPress sites, but often grow to do even more. Because of the visual importance, they’re a great place to dive in if you’re interested in getting to the “code-side” of WordPress. I myself “cut my teeth” on WordPress themes back in 2007 and 2008. WordPress themes were where I started to come to grips with the power (and limits) of PHP, CSS, and HTML. So this course is great for newbies, and those just looking to confirm their understanding of the whole system.

An editor’s note before we dive in: 2021 is an exciting year for the future of WordPress themes. For the first time since… kind of forever (that is: the start of WordPress itself)… what themes look like could change pretty dramatically. But today, in April 2021, that future is still a little unclear. And even when that future is clearer (and less likely to change) it’ll still be vital that WordPress developers understand “classic” WordPress themes for a long time. After all, as seasoned WordPress freelancers are well aware, WordPress sites can live for a long time with little more than security updates. So we’ve updated our classic and still vital little free course on WordPress themes as they are in early-2021. Enjoy!

Understanding this Free WP Theme Development Course

This is an brief introduction to the core concepts of WordPress theme development and comes from the Third Edition of our “learn WordPress development” course Up and Running. We’ve worked hard over the years to write some of the best tutorials on WordPress development, and give them away to readers here at WPShout.

Up and Running is our effort to consolidate all that teaching into a single step-by-step resource for people new to the world of WordPress coding. Hopefully, it’s also a little easier to navigate than the mess of links that is this (or any) modern website.

This post consolidates a few of that chapters from Up and Running together. While the course is much more exhaustive on both WordPress theme and plugin development than this is, we’re sure this will give you a very solid foundation to start from. The three important concepts of WordPress theme development we’ll cover here are:

  1. The WordPress Template Hierarchy
  2. Processing Posts with The Loop
  3. Adding Functionality with functions.php

We’ll take you through each one on the linked articles at the bottom of every section. Those are a very accurate representation of what you’d find in Up and Running. Although on the real course site, it’s a little easier to keep your place. We have a completion-tracking WordPress plugin for that 🤓. Like you’ll find in Up and Running, all of the linked chapters here have a Summary Limerick and Quiz to reinforce what you’ve learned at their end. 🙃

Core Concept 1 of WordPress Theme Development: The Template Hierarchy

The first thing that’ll help you get a sense of WordPress theme development is getting a sense of what all those theme files do. Some of them may be obvious to someone who has done a fair amount of web development, like style.css being the place for your CSS styling rules.
But most the work you do in WordPress theme development comes down to understanding the WordPress template hierarchy. WordPress template hierarchy underlies a lot of what’s useful and complicated about WordPress.
WordPress themes involve a bunch files. And understanding those files is the key to understanding WordPress development. All the files in the template hierarchy have a few things in common:
  • They have names that end with .php
  • They contain a version of “the Loop” inside of them (see the next section for more about that)
  • They mostly contain HTML and some PHP code

Those three bullet points are the core of what makes up the WordPress hierarchy. But there’s a lot more to understand. And that’s what our article all about it tries to help you with. Reading it will get you along the way to being a full-fledged WordPress theme developer:

The Template Hierarchy in WordPress

Core Concept 2 of WordPress Theme Development: The Loop in WordPress and What it Means

For this one, we’ve taken the time to create a custom post. Like the other of these post’s, this is a chapter from Up and Running.

The Loop is one of the things that first scared me (David writing this) about WordPress development. The core thing was that it all sounded so ominous. Whether people called it “WordPress loop” of “The Loop”, I knew that WordPress had that complicated concept involved.

Later, after I’d programmed more, I realized that this was just a basic “while” loop, a common construct in almost all programs. But before that, it really intimidated me. If you feel like you’ve got it from that description alone, you might not need to read our full article about what the WordPress Loop is and what it means. Other than the syntax which is distinct to WordPress, it’s not much more complicated than that.

But if you’ve never done much coding, you probably should be sure to read the whole article. WordPress theme development is really dependent on getting a handle on how “the Loop” works in WordPress. You’ll hear people talk a lot, as you get into theming, about being “inside the WordPress loop” and outside of it. The article covers all of that and more. If you’ve not read it yet, please do:

Understanding The Loop: WordPress’s Way of Showing Posts

Core Concept 3 of WordPress Theme Development: Adding Functionality with functions.php

Plugins are a big topic in WordPress, and I’ve sometimes heard people describe this next focus as “the plugin of a WordPress theme.” I don’t necessarily agree with that description. I also think it actually add confusion to the issue.

That said, inside of your WordPress theme’s functions.php is indeed where you write all the relevant PHP functions that you’re going to want your theme to load into WordPress on every page load. That’s exactly how it’s similar to plugin. But unlike a plugin, you can’t just turn off a WordPress theme’s functions.php file.

How functions.php Complicated Learning WordPress Theme Development

There is one complicated wrinkle to how functions.php fits into WordPress. And it comes down to WordPress hooks. For both really understanding both WordPress theme development (and plugins) you must get to the bottom of that. For most people, that’s the hard part about a WordPress theme’s functions file.

Other than that, the other hard thing is PHP syntax itself. But you may already have mastered that yourself, of you can follow along on the next article and it’ll help make it a little clearer for you.

Check out the full article on WordPress theme function files:

Adding Functionality with functions.php, a Heart of WordPress Theme Development

That’s all for this Free WordPress Theme Development Course

We hope it’s been helpful for you!

And don’t forget: if you want to continue to learn WordPress development (and more WordPress theme development) then check out Up and Running. It’s where this great content came from, limericks and all. 🙂

The Absolute Best Way to Learn WordPress Development

Get Up and Running Today!

Up and Running is our complete “learn WordPress development” course. Now in its updated and expanded Third Edition, it’s helped hundreds of happy buyers learn WordPress development the fast, smart, and thorough way. These chapters you’ve just read are just a sampling of all it contains.

Have a great day!

Image credit: rawpixel


4 Comments
Most Voted
Newest Oldest
Inline Feedbacks
View all comments
WPThemesPark
October 6, 2021 10:26 am

Nice information David. Really well-structured and useful article for beginners in WordPress theme development. Good job. Keep it up!

saimymill
July 22, 2021 1:14 pm

Amazing tutorial. It was my first time developing a WordPress theme after reading this guide. Thank you for providing such an in-depth guide. There wasn’t a single other article I found online that provided such detailed information as yours did. You are doing an excellent job.

Marie
October 9, 2018 6:58 am

Amazing post !!
I think it’s great for beginners like me. I am following this course https://www.youtube.com/watch?v=YbJmaB5NybI&list=PLER4IYznJukfOXcK23ltC699bpQzu-mFn for WordPress and I was wondering if it could be complementary to this publication. Do you know more courses to create web in WordPress?

Thanks for the help!

Ben
September 27, 2017 5:27 am

This tutorial is amazing. I’ve never developed a wordpress theme before and after going through this guide I managed to develop a theme for comparecarinsurance.co.za. Thanks for providing such an indepth guide. Everything else I found online didn’t come close to the detail you’ve provided. Keep up the great work.