Let’s Talk Extensible Code

A few weeks ago, I gave a presentation at WordCamp Kansas City titled “Modular Plugins”. The talk was focused on the idea of writing extensible code when building plugins. I’d like to continue a discussion of the same topic here.

The Ecology of WordPress Plugin Development

The vast majority of WordPress plugins function as stand alone “systems” within WordPress. By this I mean that most plugins run more or less by themselves and do not interact with other plugins running on the same install. Depending on what you’re plugin does, this can definitely be a good thing, as you do not…

How I Built the Settings System for Easy Digital Downloads

The settings system that I built for Easy Digital Downloads is something I was very happy with once finished, especially because it is very extensible, and very easy to integrate with by other developers. I decided to record an overview video that walks through how the system works.

How I Built the Extendable Purchase Receipt Templates in EDD

Easy Digital Downloads has a templating system for emailed purchase receipts that allow users / developers to create their own templates that are used for the purchase receipts. In this video overview, I want to walk you through how this system works. Building extensible modules within your plugins is something you should always strive for,…

Easy Digital Downloads Launches

Many of you are probably familiar with the project I have been working on lately called Easy Digital Downloads, even if you have only heard the name. Anyhow, I’m very pleased to announce that, after quite a few rounds of beta testing and lots of great feedback, the plugin is live and ready for use.…

Review: Custom Emails plugin from Dev7studios

Custom Emails is a plugin from Dev7studios that modifies the default emails sent through WordPress and applies a simple, clean HTML templates to them. I love the idea of the plugin, especially being someone that has built HTML emails in WordPress for several plugins, and so decided to take it for a quick trial run.

User Follow System – Part 3

In the previous part of Creating a User Follow System, we looked at the basic shell functions that we need to write for our plugin to function. Now we are going to get into actually writing those functions. We will go one by one and write each one from scratch. Also note that we will…

Should You Open Source Your Plugins?

An open source project means that anyone can take and freely modify the source code, and also re-release it as a different product. WordPress is open source, as are the vast majority of WordPress plugins. As someone who makes their living off of WordPress, I have to ask myself the question “is open source right…

Create Custom Payment Gateway for Easy Digital Downloads

Payment gateways are “methods” of accepting payments for purchases through Easy Digital Downloads. By default, the plugin comes with two payment gateways: PayPal Standard and Manual Payment. Due to the extensible nature of the plugin, add-on payment gateways can be created, of which there are quite a few available. We can have a gateway to…

Modular Plugins Presentation from WordCamp Kansas City, 2012

WordCamp Kansas City, 2012, was this past weekend, and I presented on Modular Plugins. The general take away from my presentation was that WordPress plugins should be developed with extensible code that allows them to be modified and interacted with, without ever changing core plugin code. Keep reading to view the slides from my presentation.

Check for Existence of Action Hook

Action hooks allow us to make our plugins much more extensible, and some times we need to be able to check whether a hook exists, or has been registered. We might need to check that a hook exists for a variety of reason, and thankfully WordPress gives us a really easy way to do that.…

Why Extensions?

I believe firmly in the extensions model when it comes to large plugins, in the same way that I firmly stand behind the idea that the best way to implement major functional features in themes is through the use of plugins. In general this model is pretty well accepted, but occasionally there are users that…