On Maintaining Free WordPress Plugins

March 13, 2015

If you’re ever interested in getting into WordPress plugins, then there’s a wide array of material available for you to read – this includes material across who-knows-how-many blogs, people on Twitter, and even physical books available on Amazon or likely your local bookstore (well, maybe – heh).

But when it comes to building and maintaining a free plugin (let alone several), I’ve found that there’s not as much discussion, sharing, and overall dissemination of information available. To that end, I thought it might be worth looking at four things that I’ve found useful when maintaining free WordPress plugins.

Free WordPress Plugins

To that end, I thought it might be worth sharing a few things that I’ve found useful when maintaining free plugins.

First and foremost, the challenge of building and maintaining free plugins is that they become our responsibility – they can become a time suck – and they detract from our paying gigs and the primary reward comes in serving people and their blogs above all else.

This is certainly not a complaint, but it’s the nature of maintaining a free project. On top of that, that doesn’t mean it’s an excuse to mistreat, abuse, or ignore your users, either. After all, it was your – or our – decision to launch the plugin in the first place.

With that said, here are four things that I’ve found to really help streamline working with free plugins (especially those available in the WordPress plugin repository).

1. Support Policy

It’s really nice that the WordPress plugin repository comes with a built-in support forum; however, it can also be a bit of a time suck of you have a number of plugins that are also fairly, widely used.

You’re bound to get comments, questions, feedback (yeah, some positive, some negative) all of which are going to create a sense of obligation to respond.

It doesn’t have to be this way, though.

“I do not regularly check these forums.”

Sometime last year, I threw up a sticky post in the plugin’s support forums that basically said my support policy was via email and that I was not going to checking the forums. This advice came from a friend and I thought it was great.

Yes, people still leave comments on the forums (I suppose they don’t read the post or they are looking for other community members to help them out), but the ones that really need help always find their way into my inbox.

2. Track Requests

As with any piece of software, there are going to be feature requests. Sometimes, they are worth implementing, sometimes they aren’t.

If you find yourself following a similar methodology as above, then you can expect to have some feature requests (or maybe even bug reports) show up in your inbox. Above all else, consider this a good thing.

Next, have a way to track it. If you’re strictly using WordPress’ Subversion repository for your work, then you’re going to need your own system for tracking requests – TextEdit, Evernote, Notes on your phone – it doesn’t matter.

If, on the other hand, you have something worked out where you’re maintaining the plugin on GitHub and then sending the distribution to Subversion, then use GitHub’s issue tracker to enter requests, bugs, enhancements, and all of that fun stuff.

3. Update When Possible

Above all else, you can expect WordPress to be updated every few months. This gives you a chance (perhaps an obligation) to revisit your plugin and make sure that it’s compatible with the latest WordPress code.

On top of that, it may give you a chance to refactor that area of the code that’s bothered you for so long. Or it may give you a chance to introduce a new technique that you’ve not always been happy with how it turned out.

Regardless, at least keep the plugin updated with the latest version of WordPress.

4. Maintain Perspective

There’s a lot of amazing stuff happening both online and offline in the world and, for many, the number one priority in our life isn’t WordPress or the work that we’re doing.

Don’t get me wrong: It plays a significant role in our lives especially for those of us who make a living off of working with the application, but there are also other things to focus on. There’s a time to focus on your latest project, and there’s a time to focus on other things.

Additionally, people can get disproportionately angry about the way a plugin works. You have to shrug that off, but at least try to tease out – through all of the noise – their main complaint. Try not to take it to heart (much easier said than done) and see if there’s nothing something that can be done about it in a future release (see Point 3, above).

If so, great; if not, then just let them know that it’s likely not a possibility.

There are millions of plugins many of which will do the thing that yours does but perhaps with a twist. Some will be better at it, some will be worthy contenders, and some will be worse at it.

Whatever the case may be, maintain perspective of where your plugin falls in the grand scheme of things. Yes, people are going to complain, and yes people are going to praise it, but neither of these are worth dropping everything to get back to them.

I know – we get deeply and personally invested in the work that we do. But we need to also be deeply and personally invested in the people and things around us, too.

There’s More

And yeah, there’s more than can be said and done (and I think it’d be fun to hear what you have to say in the comments) but these are the four things that I’ve found to be most helpful when working on free projects.

No, I don’t work on them as much as I’d like. Yes, I’d love to continually add new features. But I also have to remember where they fall in the grand scheme of things. You won’t find me releasing junk (if I can help it), but it may not also be updated as frequently as something that has a paying customer base.

Such is the nature of free work. At the same time, it’s not an excuse to release junk and then never fix it. Just maintain a good support policy, track your requests, make sure to keep it current with WordPress, and maintain a perspective of where it fits in the overall scheme of what you have going on in your life.

Join the conversation! 15 Comments

” however, it can also be a bit of a time suck of you have a number of plugins that are also fairly, widely used.”

This is so true, and the amount of time required should not be under-estimated.

For any interested devs in looking to output a free plugin to the community, be aware of just how much support that your free plugin will likely get. Err on the side of caution and figure in at minimum 1 hour a week in support time. This may not seem like a lot, but if you start adding more free plugins, then that starts to add up.

It’s fun to create and distribute free plugins, but as you brought up, support takes a lot of time with the more plugins you have. The point is, don’t be quick to add 40 free plugins, because that’s a full-time job in support alone.

For any interested devs in looking to output a free plugin to the community, be aware of just how much support that your free plugin will likely get. Err on the side of caution and figure in at minimum 1 hour a week in support time.

At least. I’d say increase it quickly from there based on the number of options you’re giving your users or how complex you’re making the UI.

It’s fun to create and distribute free plugins, but as you brought up, support takes a lot of time with the more plugins you have.

Agreed – it’s a lot of fun! But it’s not just a simple matter of writing and shipping =T.

You can simply visit the plugin forum index page (https://wordpress.org/support/plugin/plugin-name) and click the ‘Subscribe to Emails for this Plugin’ link at the bottom under the RSS feed link. This way you get the new support posts right in your inbox, people benefit from seeing other people’s questions, and it impacts better in your plugin’s WordPress.org page.

Spot on man, spot on. Another point worth noting that I’ve found is that you’re going to wind up with 80% of your support requests being theme/plugin incompatibilities that are simply outside of your control. Then you have to learn when to reach out and help someone with that, and when to simply say that you made the plugin to be as widely compatible as possible, but not everyone takes that approach, and thus conflicts are born.

I’ve taken the opposite approach to support. I prefer using the support forum rather than being sent emails because I find it easier to track and point people to already answered questions (and that can be repetitive at times)

I like your idea about using the Issues to maintain features and milestones. Right now, I have these all sitting within my Evernote box which I find easier to handle because it’s on my phone, tablet and mac. Given the almost non-existent level of collaboration on my plugins, I think it is just easier to maintain it via Evernote.

If a developer opts to use the support forum, that’s great; if not, that’s cool, too.

I’m not so much about which channel is best as I am which is the most effective. I know that have public answers is helpful but having n-number of plugins each with their own support forums makes it really tough to juggle all of those all week long.

Just Getting Started with WordPress?

I write a lot about WordPress development but if you're just getting started, I recommend checking out WPBeginner. They have free training videos, glossary, and more.

WPSessions hosts some of the best WordPress training you’ll find anywhere from many well-known speakers.

If there’s something you’d like to learn, and it’s not already covered here, it’s probably been covered at WPSessions. If you use the special link below you can watch your first session for free and get a steep discount on the full-access VIP membership.