• Post category:StudyBullet-15
  • Reading time:18 mins read


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

What you will learn

Learn how to create your own WordPress plugins with three amazing projects

Master the native WordPress APIs, work with your own tables, post types, shortcodes, widgets

Become independent of third-party tools by understanding in-depth how plugins work

Learn how to work with separate tables in WordPress using the powerful $wpdb class

Description

100% Answer Rate! Every single question posted to this class is answered within 24 hours by the instructor.

DISCLAIMER: before you enroll in this course, please read carefully the “Who is this course for?” section below. This course has prerequisites and MUSTΒ NOT be taken by students that don’t have a solid foundation in programming.

Do you want to stop losing customers for not knowing how to create plugins?

Are you also trying desperately to learn how to create your own plugins, but are not succeeding? You’ve been trying for a few years now, but still haven’t found good and up-to-date teaching material. Then got tired of simply looking at how long is the WordPress documentation for plugin creators.

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!

All this using only native WordPress tools. No using plugins to create another plugin!

What exactly will you learn?

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.

And much more! How about learning how to manage a custom table for your plugin in the WordPress database?

Do you know all the WordPress tables? Do you know what they do and how they are structured? You’ll learn all about them here!

In addition, you will learn how to perform all CRUD actions (create, read, update, and delete data) on your own table using the super powerful $wpdb class.

Have you ever thought of leaving the limitations that the WordPress system imposes and building your project based on a separate table? In this course, you will learn how to do it, understand in which cases it is necessary, and what are the advantages and disadvantages.

And it doesn’t stop here…

What about using the frontend to let the user submit data to this table?

I think you didn’t see that coming! Well, in this course you will understand what you will need to enable a logged-in user to submit information, which will be stored in a table automatically created by your plugin during installation.

You will also learn how to manage your own users by creating an account for them using native WordPress tools.

All this in a very secure way!

We will be constantly on the lookout for possible security threats that could compromise our application. We will use all security items such as nonces (ever heard of them?), string escaping, validations, sanitization, permission functions, error handling, and $wpdb’s prepare() method.

How about making your plugin go international?

You will learn how to create plugins that are fully translatable. Customers from all over the world will be able to use them, as they will be fully compatible with Poedit or any WordPress translation plugin.


Get Instant Notification of New Courses on our Telegram channel.


How is this course organized?

The course is divided into projects. In the beginning, we will have three projects. It doesn’t sound like much, but they will give a fantastic idea of what is needed to basically understand how most of the plugins work.

In the first project, we will create a highly dynamic and fully customizable slideshow plugin. We will start with simple subjects such as directory structuring, methods of installing, deactivating, and uninstalling plugins. Then we will move on to intermediate topics such as CPT creation, the Metabox API (used to create custom fields), we will learn how to manipulate the database by adding and updating values in the metadata tables. We will learn how to control menus and submenus throughout the WordPress admin area.

Also within this first project, we will learn to master APIs such as Settings, Options, and the Shortcode API. We will use everything we learn in this section to control the appearance and behavior of the slideshow on the frontend.

The second project is a testimonial plugin. It looks simple, but the number of techniques that you will learn will surprise you.

In this project, we will review some subjects that you will have already seen in the previous section, and learn some new ones. We will learn a lot about the Widgets API and also how to control the HTML templates used in your plugin, including learning how to implement a simple template override system, which also includes learning how to create a specific theme_support for your plugin.

The third project is the most complete and the most complex of the three. Have you ever needed to create custom tables for your plugin? Do you have any idea how some of the best-known plugins, like WooCommerce (just to name one of them), do to create and manage tables outside of the WordPress realms? Do you know why they do this, what are the advantages and disadvantages? No? Great, because you are going to learn that in this course.

In the third project, you will learn about the WordPress $wpdb class, the one responsible for managing all the custom table CRUD operations in your application. You will learn how to create tables, run queries, add, update, and remove data from those tables, using various APIs that you have learned to master during the course, such as the Metabox and Shortcode APIs.

You will learn how to synchronize these actions so that your table works in tandem with the native WordPress tables. In addition, in this section, you will see how to provide a frontend interface where the site user can submit data, without having to access the WordPress admin. We will also see how to use WordPress’ own user control system to manage user actions.

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.

How is this course different?

What my students like most is my excellent response time to their questions. You know, waiting too long can slow down your progress. So I always try to answer within 24 hours. You can be sure that you will never feel alone in this course.

Do you have any doubts? Here’s what my student Captain Krik recently wrote about one of my courses:

“Fantastic teacher, everything is explained clearly and simply. The lessons deepen in a professional way the aspects most suitable for a developer, as promised by the author. A big thank you to Marcello who made me learn new and interesting things. I also immediately bought the WordPress course which promises the same things.”

And this one is from my student Nate S:

“I was going to wait until I finish the course to leave a review, but I’m halfway through and I can already say it’s one of the absolute best courses I’ve taken on Udemy. It does not waste your time dwelling on extraneous concepts like CSS and does not use any unnecessary technology that might require extra setup or become outdated like Webpack. It’s straight to the point and extremely clear in every topic discussed in each video. He is also quick to respond and provides links for each topic as well as the full course code for easy troubleshooting. Just fantastic! If he makes another WordPress course, I will be taking it.”

And the list goes on…

So, are you ready for this course? Watch the free lessons available before you make your decision.

Remember, this is a Udemy course, so you have nothing to lose. You can count on a 30-day 100% money-back guarantee if you don’t like it.

Join us now and learn without limits!

English
language

Content

Introduction

Introduction
FAQ – Frequently Asked Questions
Course materials (please, download them to follow the course)
General Instructions (MUST WATCH)
Important Notes

Before You Begin

Initial tips on tools used in this course
What are action and filter hooks
Action Hooks
Filters

Project #1 – MV Slider

Getting to know the MV Slider plugin project
Structuring the plugin
Plugins with classes Vs Plugins without classes
Defining constants
Activate, deactivate and uninstall methods
Creating the custom post type (CPT) for the plugin – part 1
Creating the custom post type (CPT) for the plugin – part 2
Metabox API – What are metaboxes?
Metabox API – Adding metaboxes
Metabox API – Creating forms for the metabox
Metabox API – Saving metabox’s data
Metabox API – Validating and sanitizing data
Metabox API – Escaping data
Metabox API – Nonces and other validations
Metabox API – Adding values to the post type table
Adding menus to admin (part 1)
Adding menus to admin (part 2)
Settings + Options API – Introduction
Settings + Options API – Creating the form
Settings + Options API – Adding sections and fields (part 1)
Settings + Options API – Adding sections and fields (part 2)
Settings + Options API – Adding sections and fields (part 3)
Settings + Options API – Passing arguments to the created fields
Settings + Options API – Validating fields
Settings + Options API – Managing permissions and error messages
Settings + Options API – SplittingΒ  sections into tabs
Shortcode API – Introduction
Shortcode API – Creating the shortcode class
Shortcode API – Downloading Flexslider’s base files
Shortcode API – Creating the shortcode’s view (part 1)
Shortcode API – Creating the shortcode’s view (part 2)
Shortcode API – Creating the shortcode’s view (part 3)
Shortcode API – Registering and enqueuing scripts( part 1)
Shortcode API – Registering and enqueuing scripts( part 2)
Shortcode API – Making some options dynamic ( part 1)
Shortcode API – Making some options dynamic ( part 2)
Shortcode API – Making some options dynamic ( part 3)
Translating the plugin (part 1)
Translating the plugin (part 2)
Translating the plugin (part 3)
Translating the plugin (part 4)
Translating the plugin (part 5)
Translating the plugin (part 6)
Uninstalling the plugin
Quiz #1

Project #2 – MV Testimonials

Getting to know the MV Testimonials plugin project
Creating the custom post type (CPT) for the plugin
Creating custom fields with the Metabox API (part 1)
Creating custom fields with the Metabox API (part 2)
Widget API – Introduction
Widget API – Creating the widget’s class
Widget API – Creating the widget’s form
Widgets API – Saving widgets configuration data
Widgets API – Displaying the widget on the frontend (part 1)
Widgets API – Displaying the widget on the frontend (part 2)
Widgets API – Displaying the widget on the frontend (part 3)
Creating special templates for the plugin (part 1)
Creating special templates for the plugin (part 2)
Creating special templates for the plugin (part 3)
Creating special templates for the plugin (part 4)
Translating the plugin
Uninstalling the plugin
Quiz #2

Project #3 – MV Translations

Getting to know the MV Translations plugin project
Advantages and disadvantages of custom tables
The $wpdb class – Creating a custom table
The $wpdb class – Creating pages upon plugin installation
Creating the CPT and the plugin’s taxonomy
The $wpdb class – Registering the table for use
The $wpdb class – Selecting data with the get_results method
The $wpdb class – Inserting data using the insert method
The $wpdb class – Updating data using the update method
The $wpdb class – Deleting data using the delete method
Creating the class for the first shortcode
Creating the view for the shortcode (part 1)
Creating the view for the shortcode (part 2)
Creating the view for the shortcode (part 3)
Creating the view for the shortcode (part 4)
Creating the view for the shortcode (part 5)
Creating the view for the shortcode (part 6)
Creating the view for the shortcode (part 7)
Creating the view for the shortcode (part 8)
Creating the view for the shortcode (part 9)
Creating the view for the edit shortcode (part 1)
Creating the view for the edit shortcode (part 2)
Creating a specialized template for the plugin (part 1)
Creating a specialized template for the plugin (part 2)
Displaying the author’s translations in the author’s archive
Translating the plugin
Uninstalling the plugin
Quiz #3

Conclusion

Making your plugins customizable – Filters
Making your plugins customizable – Action hooks
[BONUS LECTURE]