Extending the WordPress metadata API

The WordPress metadata API is a simple way to store and retrieve information related to various objects in WordPress, such as posts, users, and taxonomy terms. Out of the box, WordPress includes post meta, user meta, and term meta, but what if you want metadata on other objects, such as custom objects provided by a plugin? Thankfully, the metadata API is actually quite simple to extend, allowing developers to easily register their own kind of metadata that is attached to their own, custom objects.

code

The monster that is a poor database schema

Step back in time two, three, four, or even 10 years and take a look at the development decisions you made then. What do you notice about them? Unless you are a one-in-a-million statistic, you probably look at those past decisions and say to yourself what was I thinking?! Why did I do it that way?! Welcome to the real world of actual development.

91798-featured

Hardships and victories in four years of eCommerce

Four years ago, I started out on a journey to build an eCommerce plugin for myself so that I could sell a few of the plugins I was building. A plugin to sell plugins, how meta. As with most of the projects I choose to dedicate my time and energy to, Easy Digital Downloads was built for me by me but in such a way that others could make use of it if they wished. Today, Easy Digital Downloads is installed on over 50,000 websites, has reached nearly one million downloads, and has grown to a sustainable business that supports the livelihood of an ever-growing team comprised of full time employees and active contractors.

91307-featured

AffiliateWP: two years later

Two years ago I wrote a post on this site to introduce my latest plugin, AffiliateWP. The plugin quickly became a staple in my company’s product portfolio and has done quite well for us. Today marks the second anniversary of our version 1.0 release so I would like to take a few minutes to look back on some of the highlights and the journey of building one of my most successful plugins.

90568-featured

Be a little selfish

Every few months some thought strikes me and I cannot get it out of my head. Recently it was the importance of finding a balance between generosity and being selfish.

86467-featured

Easy Content Types acquired by ThemeIsle

A few weeks ago I announced that my Easy Content Types plugin was available for purchase. After five years of maintaining the plugin, I felt it was time to find a new home for the plugin where it would be properly cared for and developed. Today I’m thrilled to announce that the plugin has been acquired and is now under new management.

product-easy-content-types

2015 year in review

2015 has been an interesting year for me in so many ways. Partly because it’s been supremely successful for the business and partly because it has been exceptionally challenging (and superb) on a personal level.

graph

Selling Easy Content Types

In early 2011 I released Easy Content Types, an advanced plugin that provides a graphical interface for creating post types, taxonomies, and metaboxes in WordPress. The plugin was originally released on Code Canyon.net and did quite well there. It was in the weekly top sellers nearly every week that it resided there. Then in February, 2013, the plugin was moved to this site and was one of the first plugins used to stock my own small plugin shop. Now, with some sadness and great happiness at the same time, it is time for Easy Content Types to find a new home.

product-easy-content-types

Custom Database API – The Basic API Class

In the previous sections of this series, we have looked at reasons you should build a custom database API, we have discussed how to structure your data, and we have looked at how to create the database tables. Now it is time to build the basic API that we will use to actually interact with our database. This will involve writing an API class with all of the necessary methods for retrieving, inserting, updating, and deleting data.

series-custom-database-tables

An open letter on side projects

I love side projects. They are what wake me up at night with excitement; they are what causes light bulbs to flash on inside my brain while walking my dog; they are what motivate me when all other motivation is lost; they are the distraction from my worries; they are a fundamental part of who I am as a developer; and they are an integral part to the success of so many of this world’s greatest developers and business owners.

Restrict Content Pro’s new website and v2.4

Restrict Content Pro has just been updated to version 2.4 to introduce two major new features and a few bug fixes. Along with the version 2.4 release, a new website for Restrict Content Pro was quietly launched a couple of weeks ago.

restrict-content-pro

Nikhil Vimal adopts Front End Registration and Login Forms plugin

Several years ago, I wrote a tutorial on how to create custom registration and log in forms. That tutorial was shortly after transformed into a complete plugin that has been sold on this site┬ásince. It was a fun and popular plugin but over the last few years it was lost focus from me, primarily due to the growth of my other projects. Today I’m thrilled to announce the plugin has a new owner that will keep it updated and breath new life into it.

product-front-end-registration-and-login-forms

Custom Database API – Creating the Tables

Once you have laid out the structure for your database table, it is time to create the actual tables. This is where it gets fun. When the tables are created, you can really begin building your API for interacting with the database and that’s when this whole project begins to truly take shape.

series-custom-database-tables

One year since I stopped going it alone

Since early child hood, I have always been a do-it-myself individual. It is an attitude I attribute largely to the way my father raised me and my brother. The three of us were always working around the farm making repairs and handling new construction. We did our own plumbing, electrical work, mowing, cleaning, car maintenance, and everything else. My family was reasonably well off financially so we could have hired plumbers, electricians, mechanics, etc, if something needed built or repaired, but that just was not in our nature.

73342-featured

Error: Please enter a valid email address

Error: Invalid email

Error: Please enter your first name

Error: Please enter your last name

Error: Please enter a username

Error: Please enter a password

Error: Please confirm your password

Error: Password and password confirmation do not match