Skip to main content
CF

Become a WordPress Developer: Unlocking Power With Code

41h 45m 55s
English
Paid
Learn PHP, JavaScript, WordPress theming & the WP REST API to Create Custom & Interactive WordPress Websites. Unlock the full power of WordPress and go beyond "just a blog platform" by learning how to code completely custom WordPress powered sites. I've spent the last 12 years studying WordPress, PHP, and JavaScript and now I'm here to teach you everything I know. Come along on this journey with me and become a WordPress developer.

Together we will build a website for a fictional university and along the way we will:

  • Install WordPress on your personal computer so you have a private playground copy of WordPress to practice and experiment with

  • Get introduced to the PHP language (this is what powers WordPress)

  • Set Up a New Theme (You'll learn how to convert any HTML template into a living breathing WordPress theme)

  • Create Custom Post Types and Custom Fields

  • Relate pieces of content with each other (e.g. a professor and a program)

  • Learn the basics of (object-oriented) JavaScript

  • Leverage the WP REST API

  • Learn to use JavaScript to communicate with the WordPress back-end on-the-fly

  • Let visitors sign up for a basic account on our site

  • Build a "My Notes" feature (user specific single page application with real-time CRUD actions)

  • Let users "like" or "heart" a professor (update the professor's like count on-the-fly)

  • Deploy our website live up onto the web for the entire world to view

  • And much more!

About the Author: Udemy

Udemy thumbnail

Udemy is the largest open marketplace for online courses on the internet. Founded in 2010 by Eren Bali, Oktay Caglar, and Gagan Biyani and headquartered in San Francisco, the company went public on the Nasdaq in 2021 under the ticker UDMY. The platform hosts well over two hundred thousand courses across software development, IT and cloud, data science, design, business, marketing, and creative skills, taught by tens of thousands of independent instructors. Roughly seventy million learners use it worldwide, and the corporate arm — Udemy Business — supplies a curated subset of that catalog to enterprise customers.

Because Udemy is a marketplace rather than a single editorial publisher, the catalog is uneven by design. The strongest material lives in the long-form, project-based courses authored by working engineers — full-stack JavaScript, React, Node.js, Python data science, AWS, Docker and Kubernetes, mobile development with Flutter and React Native, and cloud certification preparation. The CourseFlix listing under this source is the slice of that catalog that has been mirrored here for offline-friendly viewing, organized by topic and updated as new releases land. Pricing on Udemy itself swings dramatically with the site's near-permanent sales, which is why the platform is best treated as a deep reference catalog: pick instructors with strong reviews and a track record of updating their material rather than buying on the headline price alone.

Watch Online 173 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 173 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Welcome to the Course!
All Course Lessons (173)
#Lesson TitleDurationAccess
1
Welcome to the Course! Demo
10:00
2
What is a Dev Environment? (Your First Installation)
13:35
3
About The Recent Big Changes To WordPress
03:48
4
First Taste of PHP
16:32
5
Creating a New Theme
12:05
6
PHP Functions
14:53
7
PHP Arrays
12:29
8
The Famous "Loop" in WordPress
14:31
9
Header & Footer
18:34
10
Convert Static HTML Template into WordPress (Part 1)
03:30
11
Convert Static HTML Template into WordPress (Part 2)
18:04
12
Interior Page Template
17:53
13
Parent & Children Pages
16:59
14
To Echo or Not To Echo
09:02
15
Menu of Child Page Links
19:58
16
A Few Quick Edits / Improvements
09:22
17
Navigation Menus
15:39
18
Navigation Menus (Continued)
05:07
19
Blog Listing Page (index.php vs front-page.php)
19:59
20
Blog Continued
13:15
21
Blog Archives (archive.php)
12:10
22
Custom Queries
19:59
23
Blog: Few Quick Edits & Improvements
06:32
24
Custom Post Types
17:50
25
Displaying Custom Post Types
19:49
26
Quick Timeout: Misc Updates
14:24
27
Custom Fields
19:10
28
Ordering (Sorting) Custom Queries
14:10
29
Manipulating Default URL Based Queries
17:52
30
Past Events Page (Custom Query Pagination)
18:32
31
Creating Relationships Between Content
18:41
32
Displaying Relationships (Front-End)
19:59
33
Quick Program Edits
08:51
34
Professors Post Type
19:13
35
Featured Image (Post Thumbnail)
19:07
36
Featured Image Sizes & Cropping
09:16
37
Page Banner Dynamic Background Image
15:13
38
Reduce Duplicate Code - Create Our Own Function
19:51
39
Using Our "pageBanner" Function
10:55
40
Reduce Duplication - "get_template_part()"
11:29
41
Getting Our Computer & Project Ready for JavaScript
16:07
42
Optional: The Finished Product Of This Course: All In One Import File
13:31
43
Campus Post Type
19:47
44
Campus Map on Front-End
18:52
45
Campuses Continued
19:54
46
Final Campus Details
04:36
47
Live Search
09:54
48
Open and Close Search Overlay
18:17
49
Keyboard Events in JavaScript
19:39
50
Managing Time in JavaScript
15:33
51
Waiting / Loading Spinner Icon
19:59
52
Load WP Content with JS
17:51
53
Generate HTML Based on JSON
19:59
54
Conditional Logic Within Template Literal
17:44
55
Quick Misc Edits
10:52
56
Synchronous vs Asynchronous (Part 1)
11:47
57
Synchronous vs Asynchronous (Part 2)
10:12
58
REST API: Add New Custom Field
15:51
59
REST API: Add New Custom Route (URL)
16:38
60
Create Your Own Raw JSON Data
14:11
61
WP_Query and Keyword Searching
08:26
62
Working With Multiple Post Types
10:41
63
3 Column Layout for Search Overlay
19:59
64
Custom Layout & JSON based on Post Type
19:34
65
Search Logic That's Aware of Relationships
16:03
66
Search Logic That's Aware of Relationships (Part 2)
19:47
67
Completing Our Search Overlay
14:26
68
jQuery Free Live Search
06:51
69
Traditional WordPress Searching
19:02
70
Traditional WordPress Searching (Part 2)
19:59
71
User Roles and Permissions
19:59
72
Open Registration
20:00
73
Open Registration (Part 2)
11:49
74
"My Notes" Feature
20:00
75
"My Notes" Front-end Part 1
07:32
76
"My Notes" Front-end Part 2
14:56
77
Delete Posts with the REST API
17:52
78
Edit / Update Posts with the REST API
18:31
79
Creating New Notes
14:53
80
Creating New Notes (Part 2)
08:49
81
Note Permissions and Security (Part 1)
19:59
82
Note Permissions and Security (Part 2)
20:00
83
Per-User Post Limit
19:57
84
jQuery Free My Notes
06:14
85
Let Users "Like" Content (Part 1)
19:32
86
Let Users "Like" Content (Part 2)
12:55
87
Creating Custom POST and DELETE Endpoints
14:14
88
Programmatically Create a Post
19:18
89
Enforce Limit of One Like Per User/Teacher Combo
17:29
90
Completing the LikeBox
19:46
91
jQuery Free LikeBox
02:19
92
Going Live with Our Website
09:04
93
Path A (Simple and Quick)
18:27
94
Path B (Advanced / Manually Moving a Site)
13:24
95
Database Config for Two Site Environments
10:22
96
Ignoring Certain Files with Git
07:52
97
Automatic Git Deployments to Web Host
14:59
98
Challenge: Make Homepage Slideshow Dynamic
09:32
99
Introduction to Plugin Development
13:36
100
Let's Create Our First Plugin
10:40
101
Adding a Settings Page For Our Plugin
15:00
102
Settings API (Saving Settings Data)
19:52
103
Finishing Our Settings Form
19:59
104
Actually Counting the Words, Characters, and Read Time
19:57
105
Translations / Localization (For PHP)
19:44
106
Admin Sub-Menu
16:00
107
Custom Admin Menu Icon
17:06
108
Alternative: Manually Handling Admin Form Submit
15:24
109
Finishing Word Filter Plugin
18:04
110
Introduction to JavaScript Plugin Development
19:45
111
Introduction to JSX
19:47
112
Block Type Attributes
20:00
113
Let's Discuss the Output of Our Block (Part 1)
11:53
114
Let's Discuss the Output of Our Block (Part 2)
10:08
115
Starting Our Multiple Choice Block Type
18:26
116
Styling Our Block
11:26
117
Event Handling & Updating Block Attributes
20:00
118
Setting Up The Correct Answer
19:53
119
How To Use React on The Front-End of WordPress
18:52
120
Passing Block Data From PHP Into JavaScript / React
12:26
121
Letting Users Click On (Guess) An Answer
15:16
122
Attention To Detail
14:37
123
Let Admin Choose Background Color of Block
15:07
124
Block Text Alignment & Block Preview
08:31
125
Using The "block.json" File
17:28
126
Starting Our Featured Professor Plugin
14:24
127
Loading a List of Professors
13:10
128
Displaying Professor Info
19:59
129
Professor Preview In Editor (Part 1)
05:23
130
Professor Preview In Editor (Part 2)
19:23
131
Control Post Meta With Block Type
19:58
132
Add Related Posts to Professor Detail Page
12:06
133
Translations / Localization (For JavaScript)
11:30
134
Understanding The Pros and Cons of the "Post" Paradigm
20:00
135
Creating Our Own Custom Table
19:43
136
Querying Our Table
16:07
137
Building Dynamic Queries (Part 1)
10:57
138
Building Dynamic Queries (Part 2)
17:35
139
Create Pet From Front-End
11:35
140
Delete Pet From Front-End
09:41
141
What Is Full Site Editing?
10:11
142
Creating A Block Theme
19:59
143
Where Should We Begin With Block Themes?
10:40
144
Custom Banner Block (Part 1)
04:40
145
Custom Banner Block (Part 2)
18:55
146
Making Our Block Editable
10:16
147
Generic Heading Block
12:15
148
Finishing Generic Heading Block
18:50
149
What Is "theme.json" In A Block Theme? (Part 1)
02:52
150
What Is "theme.json" In A Block Theme? (Part 2)
19:36
151
Custom Button Block (Part 1)
05:02
152
Custom Button Block (Part 2)
19:12
153
Color Picker For Button Block (Part 1)
11:07
154
Color Picker For Button Block (Part 2)
14:11
155
Our PHP Render Approach
18:51
156
User Uploaded Background Images (Part 1)
10:16
157
User Uploaded Background Images (Part 2)
14:17
158
Quick Details: Banner Block
09:08
159
Events And Blogs Area (Part 1)
06:26
160
Events And Blogs Area (Part 2)
14:39
161
Header & Footer Blocks
12:46
162
Slideshow Block (Part 1)
16:56
163
Slideshow Block (Part 2)
11:20
164
Templates (Part 1)
08:31
165
Templates (Part 2)
12:22
166
Single Page & Post Templates
18:41
167
Remaining Templates
14:41
168
Only Allow Certain Block Types In Certain Editor Environments
07:53
169
Creating A "Blank" Template For Landing Pages
06:06
170
Challenge: Have an Update Plan in Place (Security)
08:13
171
Challenge: Query Vars
12:48
172
Finale: JavaScript Next Steps
06:07
173
Bonus Lecture
03:36
Unlock unlimited learning

Get instant access to all 172 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Related courses

Frequently asked questions

What prerequisites are needed for this course?
This course is designed for individuals with a basic understanding of web development concepts. Familiarity with HTML and CSS is recommended, as the course involves converting static HTML templates into WordPress themes. Basic knowledge of PHP and JavaScript is beneficial but not mandatory, as early lessons introduce these programming languages.
What types of projects will be built during the course?
Throughout the course, students will work on creating custom WordPress themes and functionality. Projects include converting static HTML templates into WordPress themes, creating custom post types, displaying and managing custom fields, and developing interactive features using the WP REST API and JavaScript. By the end, students will have developed a dynamic, custom WordPress site.
Who is the target audience for this course?
The course is aimed at aspiring WordPress developers who wish to go beyond using WordPress as a simple blogging platform. It is suitable for web developers looking to specialize in WordPress development, as well as designers who want to enhance their technical skills and build custom WordPress sites.
What specific tools or platforms are covered in the course?
The course covers several key tools and platforms essential for WordPress development. Students will learn to work with PHP and JavaScript for backend and frontend development, respectively. The course also dives into the WP REST API for creating custom routes and fields, empowering students to create dynamic, content-rich websites.
How does this course differ from other WordPress development courses?
This course distinguishes itself by focusing on coding custom solutions rather than relying on pre-built themes and plugins. It emphasizes understanding WordPress theming and the WP REST API to extend WordPress functionality. The course also covers advanced topics like custom queries and asynchronous JavaScript, which are not always covered in similar courses.
What topics are not covered in this course?
The course does not cover non-development aspects of WordPress such as content creation, SEO optimization, or managing WordPress installations on various hosting platforms. It strictly focuses on development skills, including PHP, JavaScript, theming, and working with the WP REST API.
How much time should I expect to commit to this course?
The course consists of 173 lessons, and the total runtime is not specified. However, given the comprehensive nature of the content, students should expect to dedicate several weeks to complete the lessons and fully absorb the material. Time commitments will vary based on individual learning pace and prior experience.