Become a WordPress Developer: Unlocking Power With Code
Learn PHP, JavaScript, WordPress theming & the WP REST API to Create Custom & Interactive WordPress Websites
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.
Updated for 2024: New chapters about The Interactivity API, Block Themes, Full Site Editing, Gutenberg Block Type Creation, Plugin Development, React.js basics, custom MySQL essentials, and more!
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!
This course may be brand new, but this isn’t my first time teaching. I’ve led training sessions for Fortune 500 companies and I’ve already helped over 17,000 people on Udemy and received the following feedback:
"Brad definitely has some of the best techniques to embed the lesson into your mind… hands down these are the best tutorials I have had the opportunity to view."
"Presentation is concise without being tedious… you honestly feel that you have a thorough understanding of the subject."
"…[Brad] explained the process. Not memorize this or that, he explained the process. If you're looking to take a course to understand the foundations of creating websites, look no further."
Become highly valuable and relevant to the companies that are hiring WordPress developers; in one convenient place alongside one instructor. If you're ready to begin coding custom websites - I'll see you on the inside!
FAQ area empty
Custom Post Types
Using The Modern Block Editor For Our Custom Post Type
Displaying Custom Post Types
Quick Timeout: Misc Updates
Custom Fields
A Note About the WordPress Post Edit Screen
Ordering (Sorting) Custom Queries
Manipulating Default URL Based Queries
Past Events Page (Custom Query Pagination)
"My Notes" Feature
"My Notes" Front-end Part 1
"My Notes" Front-end Part 2
Quick Note About The Next Lesson
Delete Posts with the REST API
Edit / Update Posts with the REST API
Creating New Notes
Creating New Notes (Part 2)
Note Permissions and Security (Part 1)
Note Permissions and Security (Part 2)
Per-User Post Limit
Quick Note About CSS
JQuery Free My Notes
Let Users "Like" Content (Part 1)
Let Users "Like" Content (Part 2)
Creating Custom POST and DELETE Endpoints
Programmatically Create a Post
Enforce Limit of One Like Per User/Teacher Combo
Don't Forget About The "isset" Solution
Completing the LikeBox
Reminder To Use "isset" In Our LikeBox HTML Output
JQuery Free LikeBox
Introduction to Plugin Development
Let's Create Our First Plugin
Adding a Settings Page For Our Plugin
Settings API (Saving Settings Data)
Finishing Our Settings Form
Actually Counting the Words, Characters, and Read Time
Translations / Localization (For PHP)
Admin Sub-Menu
Custom Admin Menu Icon
Solution To Undefined Array Key Message In Next Lesson
Alternative: Manually Handling Admin Form Submit
Finishing Word Filter Plugin
Quick Note About Loading Block Asset Files
Starting Our Multiple Choice Block Type
Styling Our Block
Event Handling & Updating Block Attributes
Focus New Field For Immediate Typing
Setting Up The Correct Answer
If You're Using a Block Theme: Load Your JS In The Footer
How To Use React on The Front-End of WordPress
Passing Block Data From PHP Into JavaScript / React
Letting Users Click On (Guess) An Answer
Attention To Detail
A Note About Animations / Transitions in React
Let Admin Choose Background Color of Block
Block Text Alignment & Block Preview
Using The "block.json" File
Understanding The Pros and Cons of the "Post" Paradigm
Creating Our Own Custom Table
Querying Our Table
Building Dynamic Queries (Part 1)
Quick Note About PHP Arrays
PHP Warnings In The Next Lesson
Building Dynamic Queries (Part 2)
Reminder Of PHP Warning Solution
Create Pet From Front-End
Delete Pet From Front-End
Converting Plugin To Be a Block Type Plugin Instead
Note About 2024 Block Best Practices
What Is Full Site Editing?
Important Note: theme.json File Needed
Creating A Block Theme
Where Should We Begin With Block Themes?
Custom Banner Block (Part 1)
Custom Banner Block (Part 2)
Check For "isset" in Your Functions File
Making Our Block Editable
Generic Heading Block
Finishing Generic Heading Block
What Is "theme.json" In A Block Theme? (Part 1)
What Is "theme.json" In A Block Theme? (Part 2)
How To Disable Most Typography & Color Choices
Custom Button Block (Part 1)
Custom Button Block (Part 2)
Color Picker For Button Block (Part 1)
Color Picker For Button Block (Part 2)
Quick Note About Link Chooser Popover
Our PHP Render Approach
User Uploaded Background Images (Part 1)
About Undefined Array Key Warnings
User Uploaded Background Images (Part 2)
Reminder To Use "isset" In Our "banner.php" File
Quick Details: Banner Block
Events And Blogs Area (Part 1)
Events And Blogs Area (Part 2)
Header & Footer Blocks
Slideshow Block (Part 1)
Quick Note About isset()
Slideshow Block (Part 2)
Templates (Part 1)
Quick Note About empty()
Templates (Part 2)
Note About The Next Several Lessons
Single Page & Post Templates
Don't Forget About Singular Content In Block Themes
Remaining Templates
Reminder To Use "isset" In Our "singleprofessor.php" File
Only Allow Certain Block Types In Certain Editor Environments
Quick Note About Custom Templates In The Next Lesson
Creating A "Blank" Template For Landing Pages
What Is The Interactivity API?
Creating Our Interactive Block
What Is Context In The Interactivity API?
Rendering HTML With The Interactivity API
Automatically Convert PHP Data into JS Data
Show Congrats & Sorry Based on Context
Callbacks In The Interactivity API
When To Use State Instead of Context
Basic WordPress knowledge (how to create a blog post, etc...)
A basic understanding of HTML (e.g. "p" is for paragraph, "h1" is for headline, etc...)
No CSS knowledge required (although it helps to understand that CSS is used to add style & design to a page)
No JavaScript knowledge required (although it helps to understand that JS is used to add interactivity to a page)
Why code is the key to building whatever you can imagine with WordPress
The ability to write PHP to manipulate the data of a WordPress site
The ability to write JavaScript to add on-the-fly interactivity to a WordPress site
How to code your own new custom block types for the "Gutenberg" Block Editor
The skills, knowledge and vocabulary to work professionally as a WordPress developer
1.2
1 Student
320 Courses
1253 Reviews
Xin chào các bạn, tôi là Nguyễn Đình Cường, một lập trình viên và giảng viên đam mê công nghệ với hơn 15 năm kinh nghiệm trong ngành công nghiệp phần mềm. Tôi tốt nghiệp từ Bưu Chính Viễn Thông và đã từng làm việc cho một số công ty công nghệ hàng đầu như FPT Software và VinGroup. Với chuyên môn chính là phát triển ứng dụng web, tôi đã làm việc với nhiều công nghệ như HTML, CSS, JavaScript, React cho front-end và Node.js, Express, MongoDB cho back-end. Không chỉ dừng lại ở việc viết mã, tôi còn yêu thích tìm hiểu sâu về thiết kế hệ thống và kiến trúc phần mềm. Tôi tin rằng quá trình học lập trình không chỉ đơn thuần là lý thuyết, mà còn là sự trải nghiệm thực tế và giải quyết vấn đề. Trong các khóa học của mình, tôi cố gắng cung cấp cho học viên những bài giảng thú vị và dễ hiểu, cùng với các bài tập thực hành giúp củng cố kiến thức. Tôi hy vọng rằng qua các khóa học của mình, bạn sẽ không chỉ học được cách viết mã, mà còn phát triển tư duy lập trình và kỹ năng giải quyết vấn đề. Hãy cùng nhau khám phá thế giới lập trình và biến ý tưởng của bạn thành hiện thực! Nếu bạn có bất kỳ câu hỏi nào, đừng ngần ngại liên hệ với tôi. Tôi rất vui được hỗ trợ bạn trong hành trình học tập của mình!
View Details