When to Use a Plugin in WordPress

WordPress plugins are great — to a point. Too many of them in an install and it looks like a 3-ring circus of a Dr. Frankenstein experiment. A little of this, a little of that, and after 50 plugins, it’s ALIVE! Congratulations, you’ve created a monster. In this article, I’ll explain when to use and not to use a plugin — and why — and discuss those situations that fall in the middle and what I do then.

Don’t use a plugin

I don’t always use a plugin when a simple custom function in the theme’s functions.php file will do the trick. Some advantages to that method are:

  • as long as it’s simple enough, you’ll probably never need to update it, unlike plugins
  • very small footprint and overhead for the system
  • complete control – some plugins just leave you wanting more or different
A good example of when to not use a plugin is the simple task of adding Google Analytics for your site. There are dozens of plugins, including Google Analyticator, that connect your Analytics account to the site, but if you’re going to do that, you’re already in the Analytics dashboard and can simply copy/paste the code into your theme without adding the overhead of a plugin that you need to keep updated.
I’ve seen a plugin installed to remove

Use a plugin

Sometimes you want a function/feature that would take 100, 1,000, or even more lines of code to achieve. Then you’d be on the hook to fix it if WordPress changes enough that the feature breaks. That’s when you use a plugin. Some great examples are the premium plugins such as Scribe, Gravity Forms, Cart66, etc. There are also dozens of top-quality free plugins such as WordPress SEO by Yoast, Digg Digg, and many of the free plugins built specifically for the Genesis framework.

Falls in the middle

In the middle of the pack are things you can do without too much effort, but take 2 minutes via plugin. The MailChimp subscribe widget plugin comes to mind immediately. It’s very little effort to add a subscription form to your site using MailChimp’s pre-made forms (they literally hand you 3 that work from your account dashboard), but it’s also very little effort to add a widget via plugin.
With things that fall in the middle, I decide based on how likely it is that I’ll need to customize something and whether it’s easier to customize my code or if the plugin already has options available. A second factor is reliance on a script. Most remote scripts update and keep things working. If it’s a local script, it can break when WP updates or when a third-party service (like Twitter or Facebook) change the rules.

Open floor discussion

That’s what I do when I’m evaluating a new project or cleaning up an existing site. I’m not a top-tier programmer, though, and I know several devs who have a much bigger bucket for not using a plugin because they just program the crap out of things because they’ve already taken a few hours or days to write custom code for other projects that they can paste into a new site in moments.
Because of that, I’ve begun collecting all of my snippets for use across many projects in an attempt to be consistent. I’m proud of where my collection is now compared to a year ago, but it still has a ways to go. I’m using a few platforms until I figure out what I want to settle on. I’m using: GitHub, Koding, Snippley for Mac, and Code Collector Pro for Mac.

This site/post/code/(everything) runs on Genesis Framework

Genesis Framework for WordPress

The Genesis Framework empowers you to quickly and easily build incredible websites with WordPress. Genesis provides the secure and search-engine-optimized foundation that takes WordPress to places you never thought it could go.

Check out the incredible features and the selection of designs. It's that simple - start using Genesis now!