WordPress is free web software you can use to create beautiful websites, blogs, or apps. If you want to learn WordPress development, you're in the right place!
We've built a comprehensive guide to help you learn WordPress development online, whether you're just getting started designing and building your first theme, or you want to explore more advanced topics such as creating plugins or using the WordPress REST API. This Learning Guide will help you:
- Design and build your first WordPress theme.
- Customize your themes to suit your needs or sell online.
- Add eCommerce features into your themes using WooCommerce.
- Develop and use WordPress plugins.
- Build apps that harness the power of WordPress.
If you prefer to watch a series of videos that take you through similar topics, try our WordPress tutorial with Adi Purdila. You'll get two hours of video instruction aimed at WordPress beginners, taking you through everything from installation to creating and managing content. By the end, you'll know how to use WordPress to create sites you're proud of.
1. What Is a WordPress Theme?
A WordPress theme is a group of files that determine the look and presentation of the content on your website. WordPress themes have been instrumental in driving the success of the platform and allow users to quickly and easily change the way their website looks and works.
What Are WordPress Plugins?
WordPress themes are perfectly complimented by WordPress plugins. WordPress themes are for presentation, and WordPress plugins are for functionality.
To learn more about WordPress themes and plugins, check out our tutorials.
- What Are WordPress Themes?Tom McFarlin28 Mar 2016
- What Are WordPress Plugins?Tom McFarlin28 Jul 2016
2. How to Build Your First Theme
Designing WordPress Themes
Before you can build a WordPress theme, you need to design it (or have a design to work with). In our course Designing for WordPress, you’ll learn the fundamentals of WordPress theme design and all the design considerations you need to think about, from the smallest widget to the largest and most complex page.
Building on a Foundation
If you're building a theme for the first time, you'll want to start with a strong foundation. We've got two courses that cover building a theme using different foundations:
- Bootstrap: Bootstrap is an open-source framework that's designed to give you a head start in developing responsive, mobile first projects on the web.
- Underscores: Underscores is a starter theme by the makers of WordPress themselves. It's designed to give you a “1,000-hour head start” on WordPress theme creation.
FREE COURSE: Learn PHP for WordPress
WordPress makes it easy to create content-rich websites, with powerful admin pages and the easy-to-use Customizer. However, there will come a time when the built-in options aren't enough, and you'll need to modify a theme or create your own plugin. That's where PHP comes in. PHP is the programming language that WordPress is built in, and if you want to take your WordPress skills to the next level, you'll have to learn PHP.
In this free course, Rachel McCollin will give you an overview of what PHP is and how it's used for WordPress themes and plugins, with examples. You'll go on to learn how to create a PHP file and use it to output HTML. Then you'll learn to use functions, loops and if statements for coding custom WordPress themes and plugins.
WordPress Coding Basics
In these Coffee Break Courses, you'll learn everything you need to know to get started coding WordPress.
- WordPress Coding Basics: Learn PHPRachel McCollin12 Jun 2017
- WordPress Coding Basics - Template PartsRachel McCollin26 Jul 2017
- WordPress Coding Basics: WidgetsRachel McCollin28 Jul 2017
- WordPress Coding Basics: The LoopRachel McCollin09 Aug 2017
- WordPress Coding Basics: Navigation MenusRachel McCollin15 Aug 2017
- WordPress Coding Basics: Your First PluginRachel McCollin30 Aug 2017
- WordPress Coding Basics: Write a FunctionRachel McCollin04 Sep 2017
- WordPress Coding Basics: Attaching Your Functions to HooksRachel McCollin20 Sep 2017
- WordPress Coding Basics: Enqueuing Scripts and StylesRachel McCollin10 Oct 2017
- WordPress Coding Basics: Conditional TagsRachel McCollin17 Oct 2017
- WordPress Coding Basics: Adding Hooks to Your ThemesRachel McCollin14 Nov 2017
3. How to Customize WordPress
Once you've built a basic theme, don't stop there! There are many ways you can customize WordPress and power it up! Learn how to create a more complete package for your clients and theme buyers.
Gutenberg is a brand-new editing interface for WordPress. Gutenberg is a major change coming to WordPress 5 this year, and it will affect WordPress plugin developers, theme designers, and website creators.
In the Coffee Break Course below, you'll get a first look at Gutenberg. Rachel McCollin will show you how to set up Gutenberg as a plugin on your existing site, and how to get started using the Gutenberg editor to create content. Follow along and you'll get to experience some of the new features of Gutenberg first-hand.
- First Look at WordPress GutenbergRachel McCollin28 Mar 2018
- Coding Blocks for WordPress GutenbergJeremy McPeak30 Jul 2021
WPBakery Page Builder
WPBakery Page Builder for WordPress (formerly known as Visual Composer) is probably the most popular page builder on Envato Market. Sitting at over 350,000 sales to date, this plugin is bundled with a large number of WordPress themes sold on ThemeForest.
Learn how to integrate WPBakery Page Builder in your WordPress theme and customize it to fit your specific theme requirements.
Coding Advanced WordPress Theme Templates
Template files are at the heart of every WordPress theme. If you've already started creating WordPress themes, chances are you have some experience with coding template files. But there's always more to learn!
In Coding Advanced WordPress Theme Templates you'll learn how to customize your themes with advanced theme templates. You'll create an advanced WordPress theme for a blog and along the way you'll learn different ways to code the Loop, how to create templates for custom page and post types, how to create templates for custom taxonomies, and how to use conditional tags to make your templates more flexible.
Custom Front Page
WordPress.org and ThemeForest have hundreds of great custom themes that you can use to create a beautiful site, but sometimes you need to customize the front page.
In Create a Custom Front Page With a WordPress Theme Template, instructor Rachel McCollin will show you how to go from a plain homepage using the WordPress 2016 theme to a custom page with a slideshow, static content, a widget area, and custom loops. By the time you finish, you'll be able to create your own custom front page with WordPress template files!
Custom Content Types
The default "Page" and "Post" content types are enough for many websites and blogs, but in order to really harness the power of WordPress as a CMS, you'll want to create custom content types with fields and taxonomies specific to your particular application.
In Using Custom Content Types in WordPress, you'll learn how custom content types work with the WordPress database, plugin, and templating system. Along the way, you'll use custom post types, custom taxonomies, and custom fields to build a simple astronomy CMS for displaying information about the largest moons in the solar system!
Creating a WordPress Theme Options Page
In the past few years, WordPress has grown to be arguably the most popular content management system out there. This growth has been supplemented by a huge number of community-made themes, most of which include some form of advanced back-end customization. The most popular form is a theme options page, but creating one is not as straightforward as you may think.
In Guide to Creating a WordPress Theme Options Page, you’ll learn the basics of creating your very own theme options page, and the result will be a set of tools you can use right away in your own theme.
Guide to The Loop in WordPress
The Loop is at the core of WordPress's post rendering engine. With The Loop, WordPress formats each post to be displayed on the current page. If you want to customize the way posts are displayed in your WordPress theme, you'll need to come to terms with The Loop.
In Guide to The Loop in WordPress, you'll learn how The Loop works in WordPress. You'll learn how to modify The Loop in your themes and plugins. You'll also see how to create a loop from scratch for the ultimate in customizability.
Make Your Theme's Design Customizable With the WordPress Customizer
The WordPress Customizer is a great way to tweak the look of a WordPress site. It's especially great for end users of your themes. They can see their changes in real time, and they don't need to know any coding to customize their site for their own branding. Even better, your theme can add custom settings to the Customizer that will let users go even further in customizing the theme to their own tastes.
In Make Your Theme's Design Customizable With the WordPress Customizer, you'll learn how to add settings to the WordPress customizer so users of your theme can edit the layout, colors, and content of their site.
- Coding Advanced WordPress Theme TemplatesRachel McCollin30 Sep 2019
- Create a Custom Front Page With a WordPress Theme TemplateRachel McCollin24 Jan 2017
- Using Custom Content Types in WordPressRachel McCollin30 Dec 2015
- Guide to Creating a WordPress Theme Options PageAdi Purdila24 Apr 2017
- Guide to The Loop in WordPressRachel McCollin31 Oct 2018
- Make Your Theme's Design Customizable With the WordPress CustomizerRachel McCollin17 Jul 2019
Customizing the WordPress Admin
When you deliver a WordPress site to a client, you might want to customize the admin pages as well. You could add custom branding, some help text to further explain how the CMS features work, or an easy-to-edit content sidebar.
Learn how to customize the WordPress admin screens to create a bespoke version of the WordPress admin for yourself and your clients in these courses.
- WordPress Admin CustomizationAdi Purdila20 Aug 2015
- Customize the WordPress Admin PagesRachel McCollin14 Apr 2016
For more on creating custom admin pages for WordPress, read our series of tutorials.
- Creating Custom WordPress Administration Pages, Part 1Tom McFarlin02 Sep 2016
- Creating Custom WordPress Administration Pages, Part 2Tom McFarlin08 Sep 2016
- Creating Custom WordPress Administration Pages, Part 3Tom McFarlin22 Sep 2016
- Creating Custom WordPress Administration Pages, Part 4Tom McFarlin06 Oct 2016
Adding Client Customization
Themes let you customize every aspect of the design and functionality of a WordPress site. But what if you want to let your client customize some aspect of the theme? Perhaps you want to sell a theme on Envato Market, and you want to let buyers adjust the color scheme and logo to match their brand. That's where the WordPress theme Customizer comes in. By making your theme Customizer-ready, you let site owners instantly change their website look and feel from within the WordPress admin UI.
In this course, Envato Tuts+ instructor Rachel McCollin will teach you how to harness the power of the Customizer in your themes. You'll see how easy it is to let users of your theme customize the color scheme of their site and add elements like logos and text.
Create Custom Queries in WordPress
On every page that your site displays, WordPress runs a query to determine whether to retrieve a static page or generate an archive list. Usually the default query is enough, but sometimes you want to go a little further. That's where WP_Query comes in. WP_Query is a powerful tool you can use to customise the way your WordPress site queries the database.
4. How to Build eCommerce Themes
Adding WooCommerce Support
WooCommerce is the most popular eCommerce platform on the web and the most popular way of bringing eCommerce to WordPress. If you're authoring a theme for ThemeForest, you should consider WooCommerce compatibility as a way to increase sales. And if you're creating an online store, you might be surprised at how easy it is to add WooCommerce support to any third-party theme.
In this Coffee Break Course, you'll learn how to ensure your theme is compatible with WooCommerce. It only takes a few extra lines in a theme's
functions.php file. It's easy to do, and best of all, it even works to add WooCommerce support to a third-party theme.
WooCommerce provides a lot of power and flexibility for simple storefronts out of the box, but to build truly outstanding sites, we have to dig a little deeper. In these courses, Envato Tuts+ instructor Rachel McCollin will teach you how to make use of the WooCommerce API to ensure that the screens on your store fit with your overall theme and your store’s brand. You'll then learn how to enhance your WooCommerce site with features such as embedded video, mega menus, and filter menus.
5. How to Develop Your Own WordPress Plugins
One of the great things about using WordPress is the vibrant plugin ecosystem. There are many thousands of different plugins that promise to improve every aspect of your site. With the right plugins, your WordPress site will run more smoothly, get more visitors, and be less likely to face problems.
In Essential WordPress Plugins, you'll learn how to install and configure free plugins for backup, security, caching, and SEO.
If you want to get started coding your own plugins for WordPress, then 3 Practical Projects to Learn to Code WordPress Plugins is a great first step. You'll learn to code plugins with a series of practical projects. With a little work, you could use these plugins in your own sites!
If you can't find the right plugin for the functionality, why not build it yourself? In the course Introduction to WordPress Plugin Development, you'll learn about everything that goes into building a WordPress plugin, and you'll finish up by building your own fully functional plugin.
6. Dig Deeper
Keep Learning WordPress
Follow the Masters
WordPress is constantly evolving, and the best way to stay on top of your game is to immerse yourself. Pay attention to what top WordPress developers are doing and you will learn plenty. Here are just a few people on Twitter you should be following:
- @tutspluscode (you aren't already?!)
Make sure you're also subscribed to our weekly digests to get a comprehensive summary of all our new code and web design tutorials each week, delivered straight to your inbox.
Learn in a Community
Why not find your own heroes on a social coding site like GitHub, ask questions on StackExchange, or join the WP Developers’ Club? The best thing about networks like these is the advice everybody gives each other; if you have a problem, someone will have had it before you and will be willing to lend a hand. Remember, you can always ask for help in our forum!
More WordPress Resources
Coffee Break Courses
- Calypso for WordPress Site ManagementRachel McCollin14 Mar 2016
- Launch a WordPress Site From Development to LiveRachel McCollin28 Mar 2016
- Understanding the WordPress Theme Template HierarchyRachel McCollin24 Jun 2016
- Customize Your WordPress Site With a Child ThemeRachel McCollin10 Oct 2016
- Anatomy of a WordPress Theme Template FileRachel McCollin20 Oct 2016
- How to Display Custom Fields in a WordPress ThemeRachel McCollin14 Nov 2016
- Registering Custom Post Types and Taxonomies in WordPressRachel McCollin06 Feb 2017
- Create an Archive Page With Custom Taxonomies in WordPressRachel McCollin09 Mar 2017
- Secure Your WordPress Site With SSLBilal Shahid10 Aug 2018
- Introduction to the WordPress REST APIBilal Shahid16 Jun 2016
- Complete Guide to WordPress MultisiteRachel McCollin29 Apr 2019
- Get Started With the WPCOM.js WordPress APIReginald Dawson30 Jun 2017
- Code a React App With the WordPress REST APIJeremy McPeak29 Aug 2017
- WordPress Security Top TipsReginald Dawson18 Sep 2017
- Building a WordPress Theme Documentation TemplateAdi Purdila29 Sep 2017
- The Complete Guide to Migrating WordPressRachel McCollin08 Feb 2019
- Command-Line WordPressTom Whitbread02 Sep 2016
- How to Determine What to Build With WordPressTom McFarlin12 Jul 2016
- Adding Custom Hooks in WordPress: Custom ActionsTom McFarlin10 Aug 2016
- Adding Custom Hooks in WordPress: Custom FiltersTom McFarlin17 Aug 2016
7. How to Sell Your WordPress Themes
Have you built a fantastic WordPress theme with your newly developed skills? Is it something that other people would find valuable? Why not think about selling your theme?
The largest WordPress theme marketplace on the web is ThemeForest, but there's lots to think about before you dive in. We have two tutorials that will help you think through whether your theme is ready to be sold.