Single Click Plugin Updater WordPress Plugin

This plugin extends the plugin update notification feature introduced in WordPress 2.3 by adding an “update automatically” link to update notifications. When you click the link, the new version of the corresponding plugin is downloaded and installed automatically. It also lets you know which plugins have update notifications enabled.
Update 06.04.2008 : Version 2.0.1 with much more features is out. More info here.

Download it now! (37 Kb)

How It Works (In Detail)

To be able to display the new link this plugin will hide the original update notification and display a slightly modified one. Here’s what happens when you click the “update automatically” link :

  1. If the plugin that needs to be updated is active, it is deactivated.
  2. The Plugin Updater retrieves the plugin’s page from WordPress.org and finds the download link.
  3. The new version is downloaded and extracted to the wp-content/plugins directory (this directory must be writable by the Updater plugin).
  4. If necessary, the updated plugin is re-activated.

All this happens in the background, so if everything works OK you’ll end up back at the “Plugins” tab. If there are any errors the plugin will display an error message and abort the upgrade.

Requirements

  • WordPress 2.3 or newer.
  • CURL library installed or allow_url_fopen enabled in php.ini. If you don’t know what that means, don’t worry – at least one of these is available on most webservers by default.
  • The /plugins directory must be writable by WordPress. The exact file permissions depend on the server configuration. Read more about file permissions. 666 or 755 may be sufficient, and 777 will always work, though this is not recommended due to security risks.

The plugin has been tested and works under Firefox 2.x, Opera 9.x and, as of version 1.0.5, Internet Explorer.

Installation

To install the plugin, please follow these steps:

  • Download the one-click-plugin-updater.zip file (below) to your computer.
  • Unzip the file.
  • Upload “one-click-plugin-updater” folder to the “/wp-content/plugins/” directory.
  • Activate the plugin through the ‘Plugins’ menu in WordPress.

That’s it.

Download

one-click-plugin-updater.zip (40 Kb)
CC-GNU GPL

Related posts :

535 Responses to “Single Click Plugin Updater WordPress Plugin”

  1. White Shadow says:

    Originally Posted By Chris Masse
    Hi,
    1. I had the “debug” function checked. Because of that, the updated plugins weren’t re-activated after the update. (It was a global update. And the plugins were Recent Comments, Similar Posts, and the Post-Plugin Library).

    2. On another note, it’s impossible to check the “Mini-Guide” option. No idea why, and no idea what it is. ๐Ÿ˜€
    Best wishes,
    Chris Masse

    Hey hey.

    1. This is the expected behaviour. In debug mode, the plugin outputs various messages and doesn’t automatically redirect to the activation URL (or you wouldn’t see the messages).

    2. Theres a typo in the name of that form field. I’ll fix that shortly. The “Mini-Guide” is for people who’ve been using the OneClick plugin (the one by Anirudh). It basically describes the main features of my plugin, and the differences between this and the OneClick plugin.

  2. Chris Masse says:

    1. I don’t get why it does not re-activate the plugins, though. And it would be fine to have a way to go back to the WP plugins page.
    2. OK. But why can’t I select that option?
    Thanks,
    Chris Masse

  3. Fizzgigg says:

    Am I blind, stupid or both? How do I Delete plugins?! I can find the delete-button (or delete link) for themes but not for plugins.

  4. White Shadow says:

    @Fizzgigg – The delete link only shows up for inactive plugins. You can’t dlete active plugins this way.

    @Chris Masse – reactivating plugins is a dangerous task (a faulty plugin can crash the script). That’s why all plugins are updated first, and then the script redirects to itself and activates the plugins one by one… Okay, it’s actually more complex than that. Anyway, you gave me an idea how to improve this part of the algorithm, thanks ๐Ÿ™‚

    Do you mean you actually can’t select the option in your browser? That would be weird. The bug I mentioned would make you unable to save that option – it would always stay off after the page reloads. It’s fixed in 2.2.1, already on WordPress.org

  5. Fizzgigg says:

    Originally Posted By White Shadow@Fizzgigg – The delete link only shows up for inactive plugins. You can’t dlete active plugins this way.

    Then I am blind because I can’t see it even with inactive plugins.

  6. White Shadow says:

    @Fizzgigg – Maybe you have JavaScript disabled? The “Delete” links are added by JS after the page is loaded. Also, you need to be logged in as someone with the “edit_plugins” security privilege to see them (blog admins typically have that capability).

  7. Fizzgigg says:

    @White Shadow – I am the admin (and logged in as one) and javascipt is enabled. Can’t see any reason why it shouldn’t work. Btw, I can’t find the dashboard widget either.

    I’m using WP 2.5.1 if that can have something to do with it.

  8. White Shadow says:

    I’m running WP 2.5.1 as well, and it works on my two blogs.

    View the source of the Plugins page and see if you can find lines like
    //Add a status msg.
    and
    //Add the “Delete” links to inactive plugins

    If you find them both, it’s a JS problem of some kind. If only the first one, it’s probably a permission problem. If neither, then there are some serious issues with that situation – the footer hook isn’t running properly.

    And what is this “dashboard widget” you speak of?

  9. Fizzgigg says:

    Originally Posted By White ShadowI’m running WP 2.5.1 as well, and it works on my two blogs.

    View the source of the Plugins page and see if you can find lines like
    //Add a status msg.
    and
    //Add the “Delete” links to inactive plugins

    If you find them both, it’s a JS problem of some kind. If only the first one, it’s probably a permission problem. If neither, then there are some serious issues with that situation – the footer hook isn’t running properly.

    And what is this “dashboard widget” you speak of?

    Sorry about that dashboard thing, I must have mixed up this plugin with some other. I don’t miss it either since I don’t use the dashboard. ๐Ÿ™‚

    I tried updating the java engine to update 6 and that didn’t help.

    I’m not sure I follow (I’m not very good at programming). If I go to http://www.mydomain.com/wp-admin/plugins.php, right click and choose View Source I can see both
    //Add a status msg.
    and
    //Add the “Delete” links to inactive plugins

    It doesn’t work on neither of my computers and nether IE7 or Firefox.

  10. White Shadow says:

    @Fizzgigg -Yes, you did the right thing. Hmm… Okay, check the source again and see if you can find any mention jquery.js. It’s probably not there. If that’s the case, then I’ve found the bug and will fix it soon.

  11. Fizzgigg says:

    @White Shadow
    I found it on row 18:

    Another strange thing is that when I click “Save changes” in “Plugins/Upgrade Settings” I get the message “Settings saved” but they aren’t saved.

    BTW, I found the dashboard thing. It’s on the page “Plugins/Upgrade Settings” way down and says “Show the Miniguide submenu on Dashboard”.

  12. White Shadow says:

    @Fizzgigg – That was unexpected, I thought it would be missing (this would explain the missing Delete link, and more).

    …I’m afraid I can’t offer any more suggestions at the moment. Sorry, out of ideas.

  13. Fizzgigg says:

    @White Shadow
    Dang, I really want this plugin to work.
    *Thinking* Four out of four of my computers has the same problem, no matter OS and browser. That makes me think there’s something with the server and not with my computers. All the attributes on the directories on the server are correct as far as I know.

  14. White Shadow says:

    @Fizzgigg – It’s weird. Since jQuery is loaded and the script present, I don’t see why the delete links wouldn’t show up.

    Does at least something work (of the plugin)? E.g. do you see yellow/gray bars for every plugin in the plugin list? And you said the options don’t get saved; do you mean all of the options, or just some specific ones?

  15. Fizzgigg says:

    @White Shadow
    I can see the grey and yellow bars, I can install plugins from URL, I can delete themes.

    I can se the page “Upgrade settings” but It doesn’t save changes despite the fact it says it does and I can’t delete plugins.

    I haven’t tried to update anything yet because there hasn’t been any updates to any the plugins I use yet.

  16. White Shadow says:

    As I said, it’s very unusual. The bars are added pretty much the same way that the “Delete” link should be added – using a bit of jQuery/JavaScrip. If one shows up, why not the other? Ah, I don’t know.

  17. Fizzgigg says:

    @White Shadow
    This is really weird.

    I’ve updated the plugin from v2.2 to v2.2.2 without any change. And I discovered that settings are in fact saved but not all of them. “Show the miniguide…” for example is not saved but most of the others are.
    Could it be different version of php? My servers are using PHP 5.2.5.

  18. White Shadow says:

    “Show miniguide” should be fixed in 2.2.2. Still no idea about the rest of the problems.

  19. Fizzgigg says:

    @White Shadow
    Wow, with the new v2.2.3 delete works! ๐Ÿ˜€ Sort of. I think I actually found a bug? When it tried to delete I get the error message that it can’t find and delete “…wp-content/pluginsmydashboard”. Shouldn’t there be a slash betweenplugins and mydashboard?

  20. White Shadow says:

    Yes, there should be a slash there. Can you give me the exact error message?

Leave a Reply