Justin Tadlock

If you were a WordPress theme developer: Plugin support

One of the questions I’m often asking users of my themes is what plugins should be supported within the themes. I ask this question a lot because there are new plugins being made daily, some getting implemented into the WordPress core, and others that don’t get updated.

This is the fourth post in the If you were a WordPress theme developer series, a group of articles where the user gets to decide how a WordPress theme should function. I’ll link to previous articles at the end of the post.

What are plugins?

Plugins are packages of code that extend the functionality of your blog in some way. Just about everybody that runs a WordPress-powered site uses at least a few plugins.

Some plugins are simply activated and work. Others might need to be added to your theme in some way; these are the plugins that we want to discuss.

You can read more about plugins on the WordPress Codex or choose from thousands at the plugin directory.

What plugins should be supported in themes?

First, I want to tell you what I don’t mean by this question. I don’t mean adding the full plugin code to a theme. I don’t mean just testing a bunch of plugins for compatibility with themes.

My question is directly related to plugins that need code added to a theme file to work properly. Generally, in the plugin’s readme file, it’ll tell you to add something like this to a particular template:

<?php if(function_exists('cool_plugin')) { cool_plugin(); } ?>

Even something as simple as that might confuse some users. Other users might simply want a theme that supports particular plugins because it’s tiresome adding plugin support every time they change their theme.

What we’d like to do, as theme developers, is already have that code in place for the theme user. That way, the user would only have to activate the plugin and never touch a line of code.

What plugins would you add support for if you were developing a theme?