Creating WordPress Plugins The Right Way

Create your first WordPress plugin using native APIs and classes, manage your own table, and much more

  • 98 Videos
  • 14 hours 38 minutes
  • 59 Happy Students

About the course

Plugins are part of what makes WordPress be what it is, the most used content management system in the world, present in more than 30% of sites worldwide! Learning how to deal with the WordPress plugin engine will set you free from third-party tools. It will also put a powerful knowledge in your hands that will help you reach new clients, financial independence, or at least a new job or a promotion at work.

All will start with this course!

This course is unlike any course you’ve ever seen. It’s about 100 lessons, organized in three amazing projects, in which I teach you everything I’ve been learning over the ten years I’ve been working with WordPress. Absolutely everything! This course won’t hide anything. All subjects are covered in great depth, with the teaching style recognized by my more than 20,000 students around the world!

Here is a shortlist of the main topics covered by this course. You will learn:

  • How to use WordPress action hooks and filters to your advantage to control the behavior of plugins and make them more flexible
  • How to structure your projects in a cleaner and more flexible way using PHP classes and objects
  • How to use the main native WordPress APIs, classes, and functions to create your plugin. For example, the Settings, Options, Widgets, Shortcode, Metabox APIs, and the methods of the very powerful $wpdb class
  • How to create custom post types (CPTs), making WordPress the perfect framework for any project you want to create
  • How to create your own taxonomies, custom menus, options pages, your own widgets and shortcodes with multiple options, metadata boxes with custom fields, etc
  • How to add stylesheets and javascript in both the admin and the frontend and control them via the options pages
  • How to install and preview what to do when installing, deactivating, and uninstalling the plugin
  • How to control the plugin’s template in the frontend, as well as create a WooCommerce-like template override system
  • How to create specific theme support for your plugin.

Who is this course for?

I recommend this course for programmers, IT students, web developers, web designers, or any freelancer or professional who works with PHP, HTML, and CSS. It is recommended that you have notions of object-oriented PHP because all plugins created in the course are based on classes and objects. It is also important that you know how to use the main MySQL commands.

Other than that, all professionals who want to learn how to create plugins are welcome. It is only necessary that you already have previous contact with WordPress and know how to install it on a local server at least.

  • You need some knowledge of object-oriented PHP, basic notions of MySQL, HTML and CSS
  • You need to know how to install WordPress and work with a local server (localhost)

Here’s the Github repository: PluginDevelopmentCourse

  • 98 Videos
  • 14 hours 38 minutes
  • 59 Happy Students

Courses Outline

Lesson 1: Introduction
Free
Introduction
9:55
Course materials
General Instruction (MUST WATCH)
6:29
Important Notes
Lesson 2: Before You Begin
Initial Tips on tools used in this course
10:36
What are action and filter hooks
12:29
Action Hooks
10:57
Filters
10:07
Lesson 3: Project #1 - MV Slider
Getting to know the MV Slider plugin project
8:11
Structuring the plugin
12:47
Plugins with classes Vs Plugins without classes
7:26
Defining constants
4:23
Activate, deactivate and uninstall methods
9:59
Creating the custom post type (CPT) for the plugin - part 1
8:24
Creating the custom post type (CPT) for the plugin - part 2
20:58
Metabox API - What are metaboxes?
8:51
Metabox API - Adding metaboxes
8:01
Metabox API - Creating forms for the metabox
3:57
Metabox API - Saving metabox's data
12:57
Metabox API - Validating and sanitizing data
9:59
Metabox API - Escaping data
9:12
Metabox API - Nonces and other validations
9:56
Metabox API - Adding values to the post type table
11:15
Adding menus to admin (part 1)
11:14
Adding menus to admin (part 2)
7:54
Settings + Options API - Introduction
4:35
Settings + Options API - Creating the form
5:50
Settings + Options API - Adding sections and fields (part 1)
11:19
Settings + Options API - Adding sections and fields (part 2)
6:31
Settings + Options API - Adding sections and fields (part 3)
15:47
Settings + Options API - Passing arguments to the created fields
6:46
Settings + Options API - Validating fields
8:12
Settings + Options API - Managing permissions and error messages
7:09
Settings + Options API - Splitting sections into tabs
8:44
Shortcode API - Introduction
3:42
Shortcode API - Creating the shortcode class
10:17
Shortcode API - Downloading Flexslider's base files
5:15
Shortcode API - Creating the shortcode's view (part 1)
9:21
Shortcode API - Creating the shortcode's view (part 2)
9:49
Shortcode API - Creating the shortcode's view (part 3)
7:51
Shortcode API - Registering and enqueuing scripts( part 1)
10:56
Shortcode API - Registering and enqueuing scripts( part 2)
5:29
Shortcode API - Making some options dynamic ( part 1)
5:06
Shortcode API - Making some options dynamic ( part 2)
2:35
Shortcode API - Making some options dynamic ( part 3)
16:24
Translating the plugin (part 1)
5:36
Translating the plugin (part 2)
7:57
Translating the plugin (part 3)
9:33
Translating the plugin (part 4)
6:04
Translating the plugin (part 5)
5:20
Translating the plugin (part 6)
8:31
Uninstalling the plugin
11:59
Lesson 4: Project #2 - MV Testimonials
Getting to know the MV Testimonials plugin project
6:57
Creating the custom post type (CPT) for the plugin
8:43
Creating custom fields with the Metabox API (part 1)
6:10
Creating custom fields with the Metabox API (part 2)
10:08
Widget API - Introduction
7:05
Widget API - Creating the widget's class
9:52
Widget API - Creating the widget's form
11:43
Widgets API - Saving widgets configuration data
8:12
Widgets API - Displaying the widget on the frontend (part 1)
5:48
Widgets API - Displaying the widget on the frontend (part 2)
11:50
Widgets API - Displaying the widget on the frontend (part 3)
3:53
Creating special templates for the plugin (part 1)
9:03
Creating special templates for the plugin (part 2)
11:40
Creating special templates for the plugin (part 3)
12:03
Creating special templates for the plugin (part 4)
11:41
Translating the plugin
4:26
Uninstalling the plugin
3:05
Lesson 5: Project #3 - MV Translations
Getting to know the MV Translations plugin project
12:59
Advantages and disadvantages of custom tables
6:47
The $wpdb class - Creating a custom table
14:08
The $wpdb class - Creating pages upon plugin installation
10:31
Creating the CPT and the plugin's taxonomy
18:08
The $wpdb class - Registering the table for use
8:56
The $wpdb class - Selecting data with the get_results method
11:35
The $wpdb class - Inserting data using the insert method
16:03
The $wpdb class - Updating data using the update method
8:41
The $wpdb class - Deleting data using the delete method
6:45
Creating the class for the first shortcode
6:35
Creating the view for the shortcode (part 1)
7:50
Creating the view for the shortcode (part 2)
8:16
Creating the view for the shortcode (part 3)
9:00
Creating the view for the shortcode (part 4)
6:14
Creating the view for the shortcode (part 5)
4:39
Creating the view for the shortcode (part 6)
14:02
Creating the view for the shortcode (part 7)
13:36
Creating the view for the shortcode (part 8)
9:31
Creating the view for the shortcode (part 9)
16:44
Creating the view for the edit shortcode (part 1)
12:45
Creating the view for the edit shortcode (part 2)
10:50
Creating a specialized template for the plugin (part 1)
10:43
Creating a specialized template for the plugin (part 2)
14:30
Displaying the author's translations in the author's archive
4:34
Translating the plugin
3:12
Uninstalling the plugin
6:05
Lesson 6: Conclusion
Making your plugins customizable - Filters
8:20
Making your plugins customizable - Action hooks
11:49
  • 98 Videos
  • 14 hours 38 minutes
  • 59 Happy Students