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 :
- If the plugin that needs to be updated is active, it is deactivated.
- The Plugin Updater retrieves the plugin’s page from Wordpress.org and finds the download link.
- The new version is downloaded and extracted to the wp-content/plugins directory (this directory must be writable by the Updater plugin).
- 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)









@Sam L - I am getting the exact same thing. I’ve tried the permissions thing. Nothing…ideas?
2.0.8 - 2.4 use the same version of PclZip, so that’s probably not the problem. An error like that might appear if the download was corrupted somehow, but then it should be only temporary - the update should work after a few tries. Besides, the download size shown in the log is correct, so I doubt it was corrupted.
If the bug was happening on my own server I’d hack the plugin to leave the temporary downloaded file in place and look at it (the .zip) myself to see why it doesn’t work. I’d also directly test PclZip on that file.
Obviously I can’t do any of that with your server, so I’ll only attempt to make the file extraction algorithm a bit more robust.
Version 2.4.1 fixed PCLZip error on updates (didn’t test on installation of new plugins yet).
But I had to set Plugin Updater Module to “Wordpress core”, since every time I ordered an update it just told me the plugin was “activated” but didn’t update at all…
@José LuÃs - I can guess why that is, but I don’t know how to fix that. Ah well.
[...] plugin instalowałem przez wtyczkę One Click Plugin Updater (również polecam) ale według danych w internecie aby ta wtyczka działała [...]
Whenever a new plugin update is released and I use your plugin to update those plugins, it does not reactivate the plugins after updating and instead shows this error message:
Fatal error: Call to a member function dprint() on a non-object in /home/navjot/public_html/nspeaks/wp-content/plugins/one-click-plugin-updater/do_update.php on line 49
Though the plugins do get updated!
I am using Wordpress 2.6.1
@Navjot Singh - This can happen when you update this plugin along with other plugins (via “Upgrade All”). It’s a known issue and will be fixed eventually.
I just wanted to mention to other people getting this message:
Extracting files from /var/tmp/PLGy67yfX…
So far, the type is set to ‘plugin’.
gzopen() found, will use PclZip.
PclZip failed!
PclZip says : ‘PCLZIP_ERR_BAD_FORMAT (-10) : Unable to find End of Central Dir Record signature’
Mine works, once I switch it to use ‘Wordpress Core’ updater in the Plugin Updater Options. Since everything other than the actual upgrade engine looks the same to me, I’m probably not going to fight with it, unless a lot of free time comes up . . .
I’m thinking it’s running into errors reading/writing from /var/tmp … /var doesn’t show up as an existing folder in my PHP File Manager. I’ll know more when I get into the backend . . . but that won’t be soon.
HTH
8/22
Hate to burst any bubbles but the one click updater does not work with WP 2.6.1 as far as I can tell. I constantly deactivates a plugin so the upgrade can be installed and then the install fails. I checked the directory permissions and all relevant directories are 755 so that should not be the issue.
The old one click installer did what it was supposed to do quite well and included zip unpack and ftp capabilities. Fortunately, I save all the stuff I install and and go back to the deprecated version!
Yes, yes.
i, too, get a error when trying to upgrade (still in WP v2.6, single click v2.3):
Fatal error: Call to a member function on a non-object in /homepages/15/d206252512/htdocs/watson/wp-content/plugins/one-click-plugin-updater/do_update.php on line 127
help! with some rarity it works, but even then i have to reenable the upgraded plugins individually. thanks for the great plugin, sorry to be that guy with the mysterious error…
@Neil -
I was having the same problem….switched over to “Wordpress Core” and the plugin updater works now.
@chris tolles - Does that “Fatal error” happen all the time, or when upgrading several plugins at a time (i.e. “Upgrade All”)? I’m fairly certain it shouldn’t happen for individual upgrades.
@White Shadow -
after reading your comment about someone else’s similar error, i tried upgrading them one at a time, but i got the exact same error whether attempting a single upgrade or multiple.
incidentally, i tried the upgrades a few minutes later, and it worked fine if they were deactivated AND i did them one by one, so go figure.
thanks for a great plugin!
@chris tolles - I think if you download and (re-)install the latest version 2.4.3 this particular error should go away.
I have a basic question about the one-click plugin updater. When I activate the plug, one of the changes I see is that some of the plugins have a yellow vertical line to the right of the plugin name while others have a vertical grey line. What does this indicate?
By the way, this is a great plugin. Thanks for creating and maintaining it.
@Travis -
I should have checked all of the links. Great addlion. Now I know what needs to be manually updated. Thanks!!
Thanks, I’m glad you like the plugin
Jumping to the conclusion that the ‘one-click’ plugin referred to in this post is ‘One Click Plugin Updater’ (sorry if I’m totally wrong here >_<) but was just wondering if this plugin does affect the post/page management section at all?
(http://wordpress.org/support/topic/199058?replies=5)
Thanks!
@Mosey - I don’t know if this is the plugin referred to in that thread (there is one other plugin with a similar name). In any case, the plugin shouldn’t affect the pages under “Manage” at all.
However, it may be possible for a failed upgrade to cause some problems. It could leave some previously active plugins deactivated. Also, if PHP is in safemode and something causes the updater to time out and be terminated by the server when upgrading (wouldn’t happen in non-safemode), in very rare cases it could theoretically leave a plugin in “half-updated”, inconsistent state, that could cause unexpected problems. In that case I’d recommend deactivating all plugins and reactivating them one by one to see which (if any) is the problematic one.
@White Shadow - Thank you very much for your prompt and helpful reply
I’ll link the asker to your answer and if it does happen to be this plugin (probably not as it does seem unlikely) then he has some way of fixing it.
Thanks again!
@Mosey - Just a quick update to say it’s all resolved now. Thanks again, White Shadow!
Really much appreciated!
Hello friends,
I’m using the One Click Plugin Updater but I have actualized to the new version. Now, when I whant to automatic update any plugin (others) I get a 404 error page.
What can I do to the plugin back to work?
Thank you!
[...] More info - One Click Plugin Updater homepage [...]
thanks for your help before, but i’m still getting errors. any help? sorry for ugly error paste, but:
Error reporting set to E_ALL.
Plugin directory is ‘/homepages/15/d206252512/htdocs/watson/wp-content/plugins/’
Checking to see if /homepages/15/d206252512/htdocs/watson/wp-content/plugins/ is writable.
Okay.
Nonce verification passed.
About to upgrade 1 plugins.
Upgrading ‘broken-link-checker/broken-link-checker.php’, download URL is ‘http://downloads.wordpress.org/plugin/broken-link-checker.0.4.8.zip’.
The plugin that needs to be upgraded is active. Deactivating.
Downloading ‘http://downloads.wordpress.org/plugin/broken-link-checker.0.4.8.zip’…
Downloaded 14780 bytes.
Will save the new version archive (zip) to a temporary file ‘/homepages/15/d206252512/htdocs/watson/wp-content/plugins/one-click-plugin-updater/plg3204cc0f4ada02ee5aba581e01cbb3f4.zip’.
About to extract ‘/homepages/15/d206252512/htdocs/watson/wp-content/plugins/one-click-plugin-updater/plg3204cc0f4ada02ee5aba581e01cbb3f4.zip’.
Extracting files from /homepages/15/d206252512/htdocs/watson/wp-content/plugins/one-click-plugin-updater/plg3204cc0f4ada02ee5aba581e01cbb3f4.zip…
So far, the type is set to ‘plugin’.
Need to load PclZip.
gzopen() found, will use PclZip.
Starting extraction to folder ‘/homepages/15/d206252512/htdocs/watson/wp-content/plugins/’.
Extracting broken-link-checker/broken-link-checker.php
Found a plugin header! The plugin is : Broken Link Checker
Extracting broken-link-checker/readme.txt
Extracting broken-link-checker/wsblc_ajax.php
Extraction succeeded.
Upgraded plugin was active. It will be reactivated.
Main loop finished.
Should redirect to http://watson.christolles.com/wp-admin/plugins.php?action=activate&plugin=broken-link-checker%2Fbroken-link-checker.php&_wpnonce=087e6af456
(Debug version = redirection will not happen. Script execution finished.)
@Chris Tolles - I don’t see any errors in that log. In fact, it seems the update went perfectly well
You just need to disable debug mode if you don’t want to see those detailed installation messages anymore (see Plugins -> Upgrade Settings).
@White Shadow -
what a dope! thanks. but still, why are the new plugins not activated?
@Chris Tolles - The upgraded plugin doesn’t get activated when in debug mode - this is by design. Plugins should get reactivated when debug mode is off… are you saying that doesn’t happen?
First off,
Just want to say that I love your plugin, and thanks for developing it!
But, like others here, I’m having an issue with the one-click update. Had to switch over to “Wordpress Core” in settings, because with the default i was getting “Plugin Activated” but no updates. It still doesn’t update all at the same time; have to update the plugins one at a time (works flawlessly that way). Not a big deal, though, just wanted to let you know.
Thanks again for a wonderful plugin, and keep up the good work!
Hello,
first of all, thanks for the plugins!
Unfortunately, I’m having an issue with the plugin updates. Here are the log:
…
Starting extraction to folder ‘/var/www/vhosts/myhostname/httpdocs/wp-content/plugins/’.
Extracting clean-archives-reloaded/clean-archives-reloaded.php
Found a plugin header! The plugin is : Clean Archives Reloaded
Can’t create file clean-archives-reloaded/clean-archives-reloaded.php in /var/www/vhosts/myhostname/httpdocs/wp-content/plugins/!
I tried both mode with no success. I’ve also tried to modify the permission for plugins directory, the to-be-updated plugin directory, and the old plugin files to 777 with no effects. Is there anything I need to set up (probably permission-wise) before using this plugin?
Thanks!