Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.

WordPress Plugin Development for 2017 - Build 14 Plugins

Learn powerful WordPress development with plugins, APIs, hooks, the WP-Admin & more with free starter plugins to improve

3.5
(118 ratings)

Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.

Learn how to leverage over 20 powerful WordPress hooks through your theme and plugins and how to leverage them to manipulate Wordpress without editing the core

Restrict the Wordpress back end menu item from any group of users

Modify content from posts and pages on the fly

Add links and new menus to the Wordpress admin bar

Learn WordPress hooks and why they are so important for theme and plugin programming.

Hide certain dashboard widgets from any user

Add new fields to user profile pages and save them automatically when the user submits their information.

How to add, update and delete WordPress meta data without one line of MySQL

Create a social media plugin that allows the administrator to enter addresses for Facebook, Twitter, LinkedIn, YouTube and more. The plugin will both create a widget using the Widget API and a template tag that can be added to any theme.

Create new thumbnail sizes and access them from the WordPress media manager and your themes

Display messages to other administrators, writers, editors and contributors in the WordPress back

Secure your WordPress back end by redirecting unauthorized users back to the home page preventing even hackers can break in with brute force attacks

Creating your own WordPress dashboard widgets from scratch

Store persistent data in the WordPress database through transients using the Transients API

Have you ever wanted to know the secrets behind all the cool things that WordPress plugins and themes can do? This course is offered by an instructor who has developed over 250 WordPress plugins for major corporations and can now teach these skills to you.

For Those Developers Who Would Like To Know How To Develop Powerful WordPress Plugins!

After getting frustrated, because maybe a downloaded plugin does not fit your needs, why not take your WordPress programming skills to the next level and really learn how to develop your own plugins or customize other downloaded plugins to fit your needs?

For PHP Developers

Programming in WordPress is a snap when you already know PHP. This course shows how to take that PHP experience and parlay into professional WordPress development.

GET OVER 14 FREE PLUGINS INCLUDED WITH THIS COURSE AND LEARN HOW TO DEVELOP THEM ALL FROM SCRATCH OR CUSTOMIZE THEM AS NECESSARY AFTER I TEACH YOU THEIR CODE!

Some Videos Come With FREE Complete Plugins

Besides just teaching the advanced concepts, some videos come with complete plugins that can be downloaded and used immediately after some customization as explained in each video.

In this course, I teach the powerful WordPress development concepts from:

Check this list out often as I constantly show you how to work with WordPress hooks, which are the most important tool in any WP developer's arsenal for creating powerful and professional themes and plugins. Without hooks, WordPress could not be able to allow developers to extend it.

Scenario: What if you or your client's website needs to correct the spelling of your company name? Every time they type a company name, they forget to capitalize the name of the company. For branding purposes, it is important to capitalize the name of the company.

In this video tutorial, we show how to fix any capitalization issues with filter hook called the_filter. This hook allows us to modify any content.

For this example, we show how to fix the common error of spelling "WordPress" with a lowercase "p".

Changing Capitalization in Posts and Pages On The Fly With Filter Hooks

03:25

We can create post programmatically when someone submits post data through a form or through another resource such as an RSS feed. In this video, I will show the wp_insert_post() function.

Inserting Posts and Pages Programmatically

06:06

User profiles can contain more than just the normal thumbnail and URL. Watch this video on how to create new and additional user fields.

Expanding The User Profile Page With Additional Sections and Fields

04:56

In this lecture, we learn how to remove menu items from any administrator user. For example, you may not want a specific admin to have access to plugins or the settings menu.

Code: Hide Menu Items from any Wordpress User

00:23

WordPress comes with this really awesome built-in function called bloginfo() that returns all kinds of information, but don't be fooled. This function returns more information that just your regular blog stuff!

Extracting WordPress Settings from Themes and Plugins With Bloginfo(): Part 1

06:27

Continuing from the previous video lecture, I continue my discussion on bloginfo().

Extracting WordPress Settings from Themes and Plugins With Bloginfo(): Part 2

09:02

Some plugins and themes contain code to create posts automatically whether from any of these:

events

log entries

recipes

instructions

and more

If we are going to be powerful programmers, we need to have this skill, so in this video, I demonstrate through a plugin how to create WordPress posts and pages on the fly in the background.

Automatically/Programmatically Create Posts and Pages on the Fly!

10:09

+–

Plugins Allow Developers To Take Control of WordPress Administrative Back End

9 Lectures
42:05

Through powerful WordPress development, we can change the WordPress back end to suit our needs, especially if we are also the administrator.

Watch this video from the instructor on some of the cool things that students will learn in this section.

What if a WordPress website has multiple writers and contributors. There may be guidelines or rules that each writer has to follow. It makes sense to add those guidelines to the top of any form where posts or pages can be added.

In this video, I show how to add that message with any HTML and CSS to the TOP of any form, so writers will see those messages.

Also, see the attached plugin file that you can modify with your own code in this video.

To start a new plugin file, download the attachment and put it in your wp-content/plugins directory. Rename this file as a .PHP file.

PLUGIN #1: Display a Message To All Writers In the WordPress Back End

03:08

If you have ever logged into the WordPress back end and see those cool dashboard widgets, you may wonder how to create those. This video has the answer and the code.

Create Your Own Custom WordPress Dashboard Widgets With PHP

04:04

Sometimes, the default admin message in the footer "Thank you for creating with WordPress." is just not good enough for our website. We can change it with the code in this video.

After you watch this video, please download the code that contains to hook to change the admin footer.

Programatically Changing The Footer Text In The Administrative Back End

03:43

Sometimes, you need a plugin to activate itself. This video teaches students how to do that.

Programmatically Activate Plugins Without Having To Click The Activate Link

02:22

Using the hooks in this video, we will add a message to the END of any form where WordPress posts are added or edited. Any HTML or CSS can be displayed.

Please see the Resources section for this video to download a plugin that you can custom from this video.

Adding Messages To Writers At the End of Any Post Editing Form

03:18

Have you wondered how some plugins and themes add links to the left side and where the HTML and PHP are generated after the user clicks those links? That is what I show in this video.

Once an option is created, it stays in the database until it is deleted. Unlike transients, options do not expire. I show you how to delete an option in less than one minute.

Options API: Deleting Options

00:37

The Options API is not just for single WordPress websites. They also work for WordPress multisites as well. In this video, I explain how to use them in less than 60 seconds.

Options API: Multisites

00:50

WordPress' Metadata API is extremely powerful, yet very easy to use and master. In this video, I show how to write one line of code to quickly and safely retrieve information from the three metadata tables in the WordPress MySQL database without writing one line of code.

Introduction to the Metadata API

10:23

WordPress' Metadata API also allows developers to change data without writing a single line of MySQL. In this video, I write single lines of code to quickly and safely update the meta data for both users and posts.

Metadata API Continued: Updating Metadata

06:18

Just as easily as we can update meta data, we can also add it from scratch and delete it without writing a single line of MySQL. In this video, I write single lines of code to do just that.

Metadata API Continued: Adding and Deleting Metadata

02:48

Exercise: Write code to add a first and last name to your WordPress admin

00:17

Widgets are perhaps the most complex way of presenting data in WordPress, but they can hold all types of data from HTML to PHP to CSS and Javascript. In this video, I create a simple widget to create a form where the WordPress admin can enter a URL for website visitors to visit and then add a blurb underneath the form.

Sample code is attached in the resources section so you can download it and try the following exercises.

Widgets API: An Introduction in Creating A Simple Widget

09:52

Exercise: Add 3 more fields to the Visit Website API and Display Its HTML

00:15

Introduction to the Theme Customization API

09:37

Bruce explains why shortcodes are necessary and why it is so important to include in our plugins.

Shortcodes are WordPress' way to provide writers and administrators a way to call WordPress functions without doing the PHP code themselves. They can return simple data or be controlled with attributes that resemble HTML attributes.

In this video, we create a simple shortcode using the Shortcode API to return the date and time to the website visitor without the admin requiring one line of HTML to dynamically call the date and time. All that is needed is a simple PHP echo statement and I show you how to code that in this video.

Shortcode API - Creating simple a shortcode

04:25

In the last video, I taught you how to add a simple shortcode that returns the date and time, but what if the writer wants to change the color of the returned output? They need to add an attribute.

In this video, I teach you how to add code to support shortcode attributes.

Shortcode API: Adding Support for Attributes

07:10

This plugin comes specifically bare. It only shows the date and time, but in this exercise, students must add support for up to 5 attributes. Read the text in this lecture to see what attributes you should add.

The process of writing hooks is easy if we know the basics. In this video, I will explain how to write hooks and their callback functions. You will find them easier than expected.

How To Write A Hook and Specify Its Callback Function

04:03

Hooks come in two flavors. I explain both here and how each type effects WordPress.

The 2 Types of Hooks

00:55

Writing The Filter Hook and How To Change Your Post Content Dynamically

05:19

Sometimes you have a specific CSS class that you want to include somewhere in the body without the worries of hard-coding them in a theme. If you distribute a plugin with its own CSS classes, you can tell WordPress to add them to the <BODY> tag. I explain how to do that in this video.

Maybe you want to create a theme or plugin that has value for the user. Facebook share buttons are always great for this purpose. I explain how to do it in this video for your theme, but the next video will take the "theme" concept and show you how to do the same thing in your plugins.

Using Hooks To Add A Facebook Share Button To Any Post or Page

09:02

This quiz helps students access their knowledge of writing WordPress hooks.

Hooks Development Quiz

5 questions

+–

Developing WordPress Plugins

4 Lectures
28:44

Watch this video to see what every plugin needs and how to make WordPress list it in the Plugins section of every installation.

This is the start of our plugin. We start with the basics by declaring our plugin to WordPress. Then, we add a title, description, version number and author information.

From there, we add our hooks and callback function.

By the end of this video lecture, our plugin will be ready to use.

Please see the resources section of this lecture to download this plugin for free. We will be building it up in subsequent videos in this section.

Create A Basic Plugin That Shows Hello World After Every Post or Page

06:03

Some WordPress themes do not always display a post or page's featured image, creating frustration for the administrator. This plugin will always display the featured image regardless of what the theme is doing. It saves time and headaches for the administrator.

Create a plugin to always display and center the current post's featured image

11:22

The Hello Dolly plugin is probably the most deleted plugin on most WordPress websites, but it serves as a great beginning to plugin development, so in this video, I take you through the code. In the NEXT video, we will spin our own version of Hello Dolly that is personally suited to us.

Dissecting The PHP and WP code for the Hello Dolly Plugin

06:55

+–

Creating and Processing Thumbnails for Post Featured Images

5 Lectures
15:25

We can programmatically create thumbnail sizes instead of using the defaults that come with WordPress such as 'thumbnail', 'large', etc. In this video, I show you how to add image sizes including their width, height and cropping options and then how to apply them to a WP_QUERY loop.

We can include our custom thumbnail size in a hook called "After Theme Setup" which lumps together multiple functions after the theme is loaded into WordPress.

In this video, I demonstrate how to set up this action hook in the functions.php of my theme. This hook makes your theme more efficient.

Adding Thumbnail Sizes With the "After Theme Setup" Action Hook

01:48

When adding media to our posts and pages, we can select exactly what custom images to include in the image selector with 6 lines of code activated by a filter hook.

In this video, I show how to code the image_size_names_choose filter hook to make this happen.

Adding Our Custom Thumbnail Sizes To The WordPress Media Manager

04:53

There may be a situation when you need to retrieve just the thumbnail URL of a featured image. One use could be to send people a logo or to link to one from any post of page, other than the featured image from a current ppost that displays through WP_QUERY.

In this video, I show you several ways to get that information from obtaining the post ID to getting the ID of the thumbnail (called the attachment in the WordPress world). The URL will be retrieved with these variables.

Getting the Thumbnail Link From The Post ID

04:15

Test your knowledge on image size development

Image Size Development Quiz

5 questions

+–

More Quick and Simple, but Powerful Plugins

6 Lectures
01:03:48

We have all seen the lyrics to Hello Dolly thanks to this plugin that gets distributed with every WordPress installation, but what if we want to CHANGE those lyrics? We can with this plugin.

In this video, I teach you two action hooks to change the lyrics as well as the admin_head action hook to dynamically add CSS styles that would not come with the admin's theme.

This video explains how to capture users in various criteria and show messages specifically to them. The accompanying plugin for this video contains code for all scenarios.

In the video, I teach you how to detect who the user is and to capture information about them such as username, email, first and last name. We do not get their password for privacy reasons.

PLUGIN #4: "User Greeting" Sending Messages To Specific Users

16:35

Just because an authorized user does not know the administrator login information does not mean that they can still hack the form. Hackers can use brute force techniques to enter with improper security settings.

In this video, we look at code to protect our backend in a private administrator environment where we can redirect unauthorized users and hackers to our home page.

This video also includes a plugin that you can customize in the Resources section.

In this video, I demonstrate how to add code to any plugin or your theme's functions.php file to replace content entered into any post or page using the WordPress filter hook called "the_content" and PHP's ereg_replace to replace dynamic code with regular expressions. We use an example of generating a secure Paypal form with Paypal's hosted button ID.

This is a complete video on creating a social media plugin that allows the administrator to enter addresses for Facebook, Twitter, LinkedIn, YouTube and more. The plugin will both create a widget using the Widget API and a template tag that can be added to any theme.

You can create a library of as many shortcodes as you'd like and put them all into one handy plugin. Here, we create a basic library of 2 basic shortcodes and you are free to add as many more as you'd like.

We can use Quicktags, which are tiny buttons in the WordPress editor. As developers, we can build them with simple PHP and HTML as well as Javascript. Download the plugin in the Resources section.

Plugin #11: Build Quicktags That Insert Any Data With Simple PHP

03:36

Plugin #12: Quicktags WIth Selected Text

08:13

Although most WordPress themes come with their own search bars, they search everything from posts, pages, and custom post types, but if you just want a search bar to work for a specific custom post type and not posts or pages. We will develop this plugin to accomplish that. We will develop this plugin as a shortcode that can be added anywhere in a theme or the content editor.

Plugin #13: Custom Post Type Search Engine

15:09

I Have a plugin that you can customize to allow the admin to add ratings with custom background colors and icons. It is based off of a star rating system, but you can substitute any icons you like instead of stars and customize the HTML and CSS anyway you see necessary,

CEO of the Web Designer Mall, a one-stop shop for all web designers and web developers.

I have designed and developed over 1,000 websites in the past 20 years for companies of all sizes from small businesses to major Fortune 500 corporations. Being the owner of a prestigious online mall for web developers, I have programmed everything from WordPress to Drupal to Joomla to simple HTML5.

Involved in the WordPress Community. I am also a speaker at WordCamps in the United States.

The Music, The Songwriting

I love writing, recording, and producing music, mainly my own originals. I play sax and piano and have over 150 songs. Yes, I should have gone for that record deal, but I still enjoy the process of making music!