DiggingIntoWordPress

by Chris Coyier & Jeff Starr

Rude Things Plugins Can Do

Posted by on

I heart plugin authors. Their work is generally amazing, a huge benefit to the community, the reason why WordPress rules so much, and deserving of much worship. That being said, plugins can do some pretty rude things sometimes…

Deactivate Themselves

I had a plugin that I used that liked to deactivate it itself when you upgraded it. I can’t say for absolutely sure why. Perhaps it wasn’t able to save settings after an upgrade and the default was off so when you upgraded it turned off. Perhaps there were new options so the author wanted people to go to the settings page to see all the new stuff. This particular plugin had all kinds of crap in the header of plugin about following him on Twitter and donating, so it was my suspicion that the turning off of the plugin was directed at making people look at all that stuff every time an upgrade was pushed out. He probably saw an uptick in donations when upgrades when out, so there was incentive to keep pushing out minor updates that shut off the plugin.

Break Stuff

Plugin authors are generally smart folks who realize that plugins meant to be used by a wide audience need to be as fool-proof as possible. If the plugin is complicated and requires use of outside files or interaction with other (theoretically default) WordPress files, testing should be done against a variety of installs and in conjunction with other popular plugins to make sure there are no conflicts.

If the plugin tinkers with existing functions, every one of them should be clearly explained so users can understand that use of those functions elsewhere may not behave as expected. Even things as simple as file paths can be problematic. As basic as that sounds, file paths should never be hard-coded.

Have Bad Documentation

To the best of the author’s ability, all plugins should include plain English explanations of why the plugin was created and what goal it hopes to accomplish. Beyond that, instructions for installation and uninstalling should be included. The WordPress plugin directory does a good job of providing “tabs” at the top of plugin pages for including this information. Also important is the FAQ section, which gives plugin authors another opportunity for plain English speak that is free from the sales-y introduction you have to do on the main page.

Insert Crap

Plugin authors know there are some hooks that almost everyone has, like wp_footer(). Hey why not add a force in a line of text down there linking back to the author site? Because that’s rude, that’s why.

Make You Sign up for a Newsletter

There was a plugin I once used fairly regularly that required “activation” that you got via email after signing up for the author’s email. That’s some strong-arm bullshit right there. And do you think this newsletter came only rarely and tastefully with important info? Obviously no, it came all the time, looked like shit, and was loaded with in-your-face proposals. Now there is a plugin that does the same thing without all that. Guess which one I use and support?

Not Update

WordPress changes, users needs change, so plugins need to update. If the plugin is so simple and sound it doesn’t really need constant point releases, its still important to go in to the documentation and indicate it is compatible with the most recent version of WordPress when that changes.

Don’t Have Changelogs

When a plugin does update, there should be at least some basic text explain what was changed and why. I always much appreciate plugin updates, but I’m not going to click that button until I can read from the author what was changed.

21 Responses

  1. curtismchale October 16, 2009

    I hate the how the all-in-one SEO plugin dies every time you upgrade. I too thinks it’s so you see the stuff about donation and now there are crappy adds at the top. I usually do donate for each new site I build but if something else comes along that doesn’t do that crap I’ll drop all-in-one-seo and use the crapless one.

  2. Not updating is annoying but what gets my goat is that there is no way in the WP.org plugins site to filter out unmaintained plugins. I’ve gone searching for plugins to solve a problem and installed many that don’t work and have been abandoned. It’s not always obvious from the WP.org plugin pages either. Gack!

    One more you can add to your list are plugins that have some complex additional installation instructions that are not programatically managed/checked for by the plugin. I recently installed a plugin that partially worked. It took a couple exchanges with the author for me to realize I had missed a note in the readme file indicating I had to move a file. The pluigin should have checked for that file being moved before allowing itself to be activated.

    Sorry, enough bitchin’. I’ve spent the last two weeks going through plugin hell for a new site.

    • One way to filter out unmaintained plugins is to just see what version of WP they say they support when downloading it. Any maintained plugin will show the most current version.

  3. change is my one and only. I want to know what was changed, do i need to upgrade, whats i the new version, if i upgrade will it mess with other plugins because of name changes. Ugh….

  4. curtismchale beat me, I was going to mention the all-in-one SEO plugin annoying habit of turning itself off after an upgrade.

    So far that is the only one I use that does that.

  5. Agree totally with the points. As for the first point, I think I know which plugin you are talking about. Extremely extremely irritating!

  6. Chris, you left out the rudest of all:

    Adding a RSS widget to the dashboard with feeds from the author’s site. :-D

    (I won’t name the plugin author who I’ve seen doing this, but I’ll say there is now a plugin in the WP.org just to remove that author’s RSS widget from the dashboard.)

    Cheers!

    • I just saw that “removal” plugin to day for the first time. But I came across another “first” today too … A plugin where the author has row after row of advertising (I mean 300×200 boxes!) And then a section with about 7 “shoutouts”, which looks like his entire link roll.

      This is absolutely too much crap added to our Admin panel. Plus, it seems to me it adds another layer of security risk.

      I appreciate the work that goes into developing plugins, and I don’t mind receiving a request for donations, but I really wish there were some etiquette rules for plugin authors.

  7. @Jeff Ivany, I agree with the BS at the top of the all-in-one SEO plugin. I got rid of that crap by going into the Dashboard > Plugins > Editor then editing the proper file. I just cut all that offending crap out of there and it makes the plugin less intrusive. Of course you have to do this after every “upgrade”

  8. The only benefit I can see from the plugin deactivating itself after upgrade is to ensure that you’re using any new/changed functions that possibly can save you from a broken site or what have you.

    My peeve is primarily those that insert their links after their content is shown (eg: Dagon Design’s plugins) or those that don’t give you an option to turn them off.

    • Jordan,

      You’re correct. A while back (9 month ago?), a particular site complained that a new feature damaged their site’s search engine results placement. They finally admitted that they were incorrect in this assumption, and that the cause was something else unrelated to the plugin, but their original assessment was that a new feature hurt them.
      They complained that since most people don’t read my changelog, posts, or check the options page for new options, people won’t know about new settings which could potentially affect their site.
      This post, and followup posts on other sites who didn’t read their addendum admitting AIOSEOP was not the cause of their problems, garnered such attention, that it seemed I had to do something so that an issue like that could never actually happen where someone’s site really is negatively affected just because they aren’t aware of new options.
      From then on, any update which introduces new options (not just behind the scenes changes) require the user to reactivate the plugin from the settings page, to make sure that they can review the options.

      • Thanks for the updated on this Michael. I’m going to do a post setting the record straight on this behavior.

      • Chris,
        Your welcome. I’m aware of how it looks, and I understand that it’s annoying for some users. I spent a lot of time thinking about it and consulted with a number of other people in the community when contemplating the decision about what to do.
        Unfortunately, in this case there was no way to make everyone happy, so I sided with ensuring that nobody could ever say (even if incorrectly as was the case) that new features introduced caused harmful effects to their sites SEO.
        Part of the thinking was that, unlike most other plugins which have immediately obvious effects of any configuration changes, AIOSEOP configuration changes may be tucked away in the source (which your average user won’t notice) and the visible effects (SERPS) may not be apparent for some time. This gives everyone an opportunity make the needed (if any) changes.
        One example of this is canonical URLs (the introduction of which). I added canonical URL support not quite a year ago, and now WordPress 2.9 has it built in. AIOSEOP will automatically override the WP canonical URL and use its own method if you so choose, or it can fall back on WP’s. Depending on what plugins a person is running, using the WP canonical URL can be very very bad for your site, and when 2.9 was about to come out, I had to make changes to compensate for this, and it was very important that users know about the issue so that they can make a decision. People will complain about having to reactivate the plugin, but I’d rather have them fuss at me about that then have them fuss that they didn’t know about the new WP and/or AIOSEOP settings which potentially caused harm to their site’s SERPS.
        It was a tough decision to make, and obviously everyone won’t be happy regardless of which path I took, but I’ve always tried to do what is in the best interest of users.
        (Maybe I should write a better post explaining all this.)

        Sorry about the misplacement of this comment, but for some reason there’s no reply button under your reply to me. :)

      • Oh I see, it only goes to the third level. Feel free to edit that part out and to delete this comment.
        :)

  9. thank for this info.

  10. Oh God how I hate plugins that deactivate themselves. One example would be SexyBookmarks…which is quite nice, but this deactivation gets me everytime I upgrade and I’m looking for another solution.

    By the way, you should include another rude thing: “Updates way too often (for any small changes)”

  11. Just out of interest, I made a plugin, Submit to Any, and it includes a author linkback but has an option to turn this off. Is that still considered dreadful, and a threat to the wordpress community?

    Loving the posts here by the way. So glad you and Jeff decided to make this site.

  12. I know what you mean with the signing up for the author’s newsletter when activating a plugin. DiffPostsPerPage does that.

    Does anyone know an alternative to that plugin? I hate giving my email just to get a dumb plugin.

    • That depends on how much you want it. Technically, you could take any plugin, modify it to remove any of the ‘junk’ and release it yourself. Everything in WP is Open Source and thus you are able to do this. Now, you might really tick off the original author and they might throw a hissy fit which could lead to the original plugin being abandoned.

Comments are closed. Contact us with any critical information. Thank you!

Code is poetry