Giter VIP home page Giter VIP logo

wp-update-server's People

Contributors

dangoodman avatar dcooperdalrymple avatar jrfnl avatar mweimerskirch avatar yahniselsts avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wp-update-server's Issues

Problem path

Plz, who ist problem?

Warning: require(/users/zalohovane/44670061/expres-web.cz/www/wp-update-server/plugin-update-checker.php): failed to open stream: No such file or directory in /users/zalohovane/44670061/expres-web.cz/www/wp-content/plugins/wptouch-cestina/wptouch-cestina.php on line 34

Me php info:
http://expres-web.cz/wp-update-server/info.php

Thx

Setting Up the Server: Step #5 Won't Work

I got down to Step 5 under "Setting Up the Server". For some reason, when I go to verify that the API file is working by visiting the JSON file within by browser, I get a completely blank page (no HTML in the source either).

I've definitely gone to the right location, and even changed my URL to match my plugin slug, e.g.:

http://example.com/my-plugins/wp-update-server/?action=get_metadata&slug=test-plugin-1

This may be the cause of why WordPress won't notify me of updates for my plugin.

Thanks, Yahnis!

Adam

Issue with WP Example

When I was reading the docs and playing with the code to get familiar with it I noticed the Wordpress example has a bug. You changed the query string params to "update_action" & "update_slug" instead of just "action" and "slug" with the class. The issue with this is that when the code gives back the download URL it gives it with the old params "action" and "slug" rather than "update_action" & "update_slug" so the download url doesn't work.

Cannot modify header information

When I try to open http://www.domain.com/index.php (where my WP is installed) I just get:
Warning: Cannot modify header information - headers already sent by (output started at /www/htdocs/w00ea973/wordpress/wp-content/plugins/myPlugin/myPlugin.php:1) in /www/htdocs/w00ea973/wordpress/wp-includes/pluggable.php on line 1207
What can I do against that? I just copy-pasted your Code to my plugin, the updating procedure works flawlessly but whenever I try to open a *.php file I just get that error.
I would like to use your code but I can't when it breaks almost the entire backend.

Usage inside a WP plugin

Sorry for noobish question but i'm unclear on how to "load" the server inside a wordpress plugin.

I have checked the main readme on how to do it but i'm confused on what the 2 functions you posted do and what other functions will be needed

validating a "key"

Hey.
Got a small issue.
I`m using addQueryArgFilter to add a license_key param in the plugin file.

I can see that the param hits the update server when checking for updates but when clicking Update Now for a plugin the license field is not sent in the request.

Is there something else that needs to run to add the param to the download action ?

WP-Network Compatibility

Hi YahnisElsts,
I'm experiencing the following issue:
Clicking on "check for updates" makes call to update server correctly and get response but there is no "update plugin" afterwards to allow me to install the update.
This issue is only present on my wp-network installation on the same server (nginx, not apache).
I have tried installing my plugin a wp installation on a godaddy server and it worked perfectly so i think the problem is with wp-network compatibility.

Here are two log entries, the first is from my wp-network that doesn't work, the second from the godaddy wp that did work

[2013-03-31 01:31:53] 173.255.201.162 get_metadata wb-sales 0.2 3.5.1 http://wp.home.idea-team.org/findyourgggspot action=get_metadata&slug=wb-sales&checking_for_updates=1&installed_version=0.2
[2013-03-31 01:38:35] 188.121.41.140 get_metadata wb-sales 0.2 3.5.1 http://www.carlyhope.com action=get_metadata&slug=wb-sales&checking_for_updates=1&installed_version=0.2

could the issue be with the network install path looking like a sub-directory install?

Please let me know if there are other test i can run that you can think of.

Update changing theme folder name

The API has been working great for months but this week it started to change the theme folder name to:
"actiondownloadslugtheme-name" after I do the update theme in wordpress and it should be "theme-name".

Package Could Not Be Installed

Hi,

I getting this error when trying to update a plugin:

“The package could not be installed. PCLZIP_ERR_BAD_FORMAT (-10) : Unable to find End of Central Dir Record signature”

Note: When using "Plugin Update Checker" I do not get this error.

Can't use update server as a plugin on a wordpress installation

includes/WPup/UpdateServer.php:line 148
function validateRequest throws You must specify an action.

This is not practical when the update server is installed as a WordPress Plugin since it throws:

400 Bad Request
You must specify an action.

When a visitor is visiting the homepage then the plugin shouldn't check for action. Instead should just let WordPress do its thing and serve the homepage instead of json.

Possible to have static files instead of dynamic script on the server?

Hello,

This project is very interesting.

The only thing I am skeptical about is the fact that the server has to run a dynamic script and thus be prone to abuse.

At least, instead of the following GET arguments:

http://yourserver.com/wp-update-server/?action=get_metadata&slug=your-plugin

... would it be possible to have a permalink structure like:

http://yourserver.com/wp-update-server/get/metadata/your-plugin-slug/

.. and responses with proper Cache-Control headers, so as to be able to cache them on a CDN or a caching proxy?

I'd like to make clear that I am not aware of the Update API, so all of the above might be just nonsense.

To sum it up, is it possible to upload static files, which contain all the necessary data about the plugin status, on a server and still have plugin update checker check them and work as expected?

George

No Update available

Hello,

I have a problem with the update server. The JSON data are retrieved regularly according to the log file. Look here:

[2017-01-09 18:30:10 +0000] 178.254.38.202 GET get_metadata drkwp_v2 2.0.0 4.7 http://drkwp2016.klebsattel.de action = get_metadata & slug = drkwp_v2 & installed_version = 2.0.0

When I call the following address: https://www.klebsattel.de/wp-update-server/?action=get_metadata&slug=drkwp_v2 appears there, that version 2.0.1 is available. When I log in to Wordpress the update is not displayed. What could be the reason?

Best wishes
Jörg Klebsattel

Updates working but "progress" gear busy "ad infinitum"

Good day Yahnis.
First of all thanks for the outstanding job. I've followed your instructions and I'm able to download and install my plugin's updates from the wp-update-server.
If I fire up the update process from the "update-core" core page (i.e.: http://myexmaplesite.com/wordpress/wp-admin/update-core.php for example), the update process is flawless. Each phase is displayed while in progress (maintenance mode activation, zip file download, decompression, etc.) and, at the end, a message notifies me of the successful update.
On the other hand, if I do the same, but from the "installed plugins" page (i.e.: http://myexamplesite.com/wordpress/wp-admin/plugins.php) the process apparently freezes.
The page displays correctly an "update available" warning, but after clicking the "update now" button the "progress gear" starts revolving, the "please wait" notice is displayed but nothing more happens.
If i try to abandon the page, Wordpress warns me that an update is in progress and if I forcibly leave the page, this could break my plugin.
Well, actually this doesn't happen. Actually the plugin is updated correctly. In fact if you forcibly leave the page and reload the plugin page you can see that the plugin has been updated successfully.
So the problem is, apparently, that Wordpress is awaiting for some form of notification at the end of the process that the update-server doesn't give.
By the way, I'm using wp 4.2.2.
Thank you again for your help

Widgets turn inactive after theme update

Hi,

I've installed the theme_update_checker on my website. Everything's working except the widgets.

I'm using woosidebars to create multiple custom sidebars on my theme. Happens that when I update the theme for the last version, some of the widgets go to the inactive section.

Any hint on this? This happens to anyone else?
Thank you

Updated theme and validating a "key"

I followed this post! And everything works ok, except:

require get_template_directory() . '/admin/theme-updates/plugin-update-checker/plugin-update-checker.php';
$UpdateChecker = Puc_v4_Factory::buildUpdateChecker(
    'http://dev/wp-update-server/?action=get_metadata&slug=theme_name',
    __FILE__,
    'theme_name'
);

//Add the license key to query arguments.
$UpdateChecker->addQueryArgFilter('wsh_filter_update_checks');
function wsh_filter_update_checks($queryArgs) {
    $settings = get_option('license_key');
    $queryArgs['license_key'] = $settings;
    return $queryArgs;
}

Result:
Downloading update from http://dev/wp-update-server/?action=download&slug=theme&license_key=totallyvalid…
An error occurred while updating Theme: Download failed. Forbidden

What else must be added to functions.php?

Problems adding licens to plugin

I followed this post! and i manage to fix the server part but when try to access with the web browser says Server error 500

http://mysite.com/?action=get_metadata&slug=myplugin&installed_version=1.0.0&license_key=3f4324-g32se4-32b

Warning: The URL http://mysite.com/?action=get_metadata&slug=myplugin&installed_version=1.0.0&license_key=3f4324-g32se4-32b does not point to a valid plugin metadata file. HTTP response code is 500 (expected: 200) in /var/www/mysite/htdocs/wp-content/plugins/myplugin/plugin-update-checker/plugin-update-checker.php on line 246

Plugin version not working?

When I installed the server in the root of my website directory it seemed to work fine but when I install it as a plugin it's like the code in the plugin file isn't doing anything.

Below is my full plugin code. I have copied your example plugin exactly, all I have done is changed the MyCustomServer class to include the alternate code you also have in the readme file. And I also changed the require_once URL at the top.

When I check for updates it shouldn't show the download/update link for the plugin but it is showing it. So it's like the class isn't being fired. What am I doing wrong?

Thanks for the great work by the way!

<?php
/*
Plugin Name: Plugin Update Server
Description: An example plugin that runs the update API.
Version: 1.0
Author: Yahnis Elsts
Author URI: http://w-shadow.com/
*/

require_once __DIR__ . '/wp-update-server/loader.php';

class ExamplePlugin {
	protected $updateServer;

	public function __construct() {
		$this->updateServer = new MyCustomServer(home_url('/'));
		
		//The "action" and "slug" query parameters are often used by the WordPress core
		//or other plugins, so lets use different parameter names to avoid conflict.
		add_filter('query_vars', array($this, 'addQueryVariables'));
		add_action('template_redirect', array($this, 'handleUpdateApiRequest'));
	}
	
	public function addQueryVariables($queryVariables) {
		$queryVariables = array_merge($queryVariables, array(
			'update_action',
			'update_slug',
		));
		return $queryVariables;
	}
	
	public function handleUpdateApiRequest() {
		if ( get_query_var('update_action') ) {
			$this->updateServer->handleRequest(array_merge($_GET, array(
				'action' => get_query_var('update_action'),
				'slug'   => get_query_var('update_slug'),
			)));
		}
	}
}

class MyCustomServer extends Wpup_UpdateServer {
	protected function filterMetadata($meta, $request) {
		$meta = parent::filterMetadata($meta, $request);
		unset($meta['download_url']);
		return $meta;
	}
	
	protected function actionDownload(Wpup_Request $request) {
		$this->exitWithError('Downloads are disabled.', 403);
	}
}

$examplePlugin = new ExamplePlugin();

download link access denied

Hi
I installed this script and added my plugin. so that i should see something in this two endpoints:
metadata: http://plugins.appchar.com/?action=get_metadata&slug=appchar
download: http://plugins.appchar.com/php5-fcgi?action=download&slug=appchar

Metadata works fine but download link returns "access denied".
I found this in apache error log:

[Mon Aug 08 15:49:45.592131 2016] [:error] [pid 32371:tid 140625072580352] [client 37.255.134.131:10853] FastCGI: server "/usr/lib/cgi-bin/php5-fcgi" stderr: Access to the script '/usr/lib/cgi-bin/php5-fcgi' has been denied (see security.limit_extensions)

It is not folder/file permision issue
help please

WP CLI doesnt detect updates for plugins and themes

i run mostly my wordpress updates semi-automated with the WP-CLI
when i use this WP-CLI commands:
wp plugin update --all --dry-run
wp theme update --all --dry-run
it lists only updates for default plugins/themes, but not for those i hosted on wp-update-server.
can you confirm this? or did i configured something wrong?

Greetings :)

WP Update Server not work

Hello, i following all steps describes in this page

  1. The directory wp-update-server is inside of the wp-content directory and renamed in updates.
  2. The example plugin is in wp-content/plugins/my-plugins/my-plugins.php
  3. The update plugins is zip format (my-plugins.zip) inside wp-content/updates/packages
  4. The example plugin is active.

but the test:

http://my-server.dev/wp-update-server/?action=get_metadata&slug=my-plugins

or

http://my-server.dev/updates/?action=get_metadata&slug=my-plugins

always return the 404 error page.

Any idea?

Updates for Single or Unlimited Domains

Hi, I started using Plugin Update Checker and WP Update Server for my themes with license verification which is working great. I have a question though, by default it will update themes for unlimited domains right even if the license is same?

Idea: better support for plugin banners

Example UpdateServer.php

protected function filterMetadata($meta, $request) {
	//By convention, un-set properties are omitted.
	$meta = array_filter($meta, function ($value) {
		return $value !== null;
	});
	
	$low_banner = 'http://' . $plugin_url . 'banners/' . $slug .'-772-250.png';
	$high_banner = 'http://'. $plugin_url . 'banners/' . $slug .'-1544-500.png';
	$banner_array = array('low' => $low_banner,'high' => $high_banner);
	$meta['banners'] = $banner_array;
	
	return $meta;
}

Error when trying to update plugin

Everything seems to be working ok except for the final step of actually updating the plugin.

When I try clicking the update button I get the following error:

Update Failed: The package could not be installed. PCLZIP_ERR_BAD_FORMAT (-10) : Unable to find End of Central Dir Record signature

I have done a bit of Googling on this error message and it's commonly associated with bad zip files or not enough server resources but I am very very confident this isn't the issue in my case because I have tried my own plugins and also existing well established plugins like Akismet and they all get the same error. I have also tried running the updates on my local server (MAMP) and on a typical live Apache server and they are all getting the same error message.

As you know from my previous issue I am running this as a plugin. My plugins code is blank it's not checking for anything so the download should just work. Here is a metadata url:

https://northernbeacheswebsites.com.au/?update_action=get_metadata&update_slug=akismet

and my plugin code is like follows:

<?php
/*
Plugin Name: Plugin Update Server
Description: An example plugin that runs the update API.
Version: 1.0
Author: Yahnis Elsts
Author URI: http://w-shadow.com/
*/

require_once __DIR__ . '/wp-update-server/loader.php';

class ExamplePlugin {
	protected $updateServer;

	public function __construct() {
		$this->updateServer = new MyCustomServer(home_url('/'));
		
		//The "action" and "slug" query parameters are often used by the WordPress core
		//or other plugins, so lets use different parameter names to avoid conflict.
		add_filter('query_vars', array($this, 'addQueryVariables'));
		add_action('template_redirect', array($this, 'handleUpdateApiRequest'));
	}
	
	public function addQueryVariables($queryVariables) {
		$queryVariables = array_merge($queryVariables, array(
			'update_action',
			'update_slug',
		));
		return $queryVariables;
	}
	
	public function handleUpdateApiRequest() {
		if ( get_query_var('update_action') ) {
			$this->updateServer->handleRequest(array_merge($_GET, array(
				'action' => get_query_var('update_action'),
				'slug'   => get_query_var('update_slug'),
			)));
		}
	}
}

class MyCustomServer extends Wpup_UpdateServer {

}

$examplePlugin = new ExamplePlugin();

Do you know why this error may be occurring? Thanks,

Amazon S3

Someone managed it (if possible at all) to combine the wp-update-server with Amazon S3? Thought about linking the packages folder to an S3 bucket.

Uncaught Error: Class 'ThemeUpdateChecker' not found ?

I'm trying to get this running but using the documentation and adding in the below along with including plugin-update-checker files i get the following error...

Fatal error: Uncaught Error: Class 'ThemeUpdateChecker' not found in C:\inetpub\wwwroot\wordpress1\wp-content\themes\ myBlog\functions.php :204 \wp-content\themes\ myBlog\functions.php on line 204

etc etc etc
`
if ( file_exists( get_template_directory() . '/inc/plugin-update-checker/plugin-update-checker.php' ) ) {

require get_template_directory() .  '/inc/plugin-update-checker/plugin-update-checker.php';
$MyThemeUpdateChecker = new ThemeUpdateChecker(
	'schoolsUOL', //Theme slug. Usually the same as the name of its directory.
	'https://mysite.co.uk//wp-update-server/?action=get_metadata&slug=myBlog-1.0.8' //Metadata URL.
);

}
`

Plugin Updates Not Being Found (Fixed!)

My most recent plugin update wasn't being found. I narrowed the issue down to the 'wp-update-server' files. Upon testing to see what the error was, I visited:

http://example.com/my-plugins/my-plugin-slug/wp-update-server/?action=get_metadata&slug=my-plugin-slug

And got this Error message:

"It is not safe to rely on the system's timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/New_York' for 'EDT/-4.0/DST' instead in /hsphere/local/home/hosting_account/example.com/my-plugins/my-plugin-slug/wp-update-server/includes/Wpup/UpdateServer.php on line 225"

Turns out that the error was caused by the latest update to PHP 5.3 on my server. I changed line 225 of that PHP file from:

$line = date('[Y-m-d H:i:s]') . ' ' . implode("\t", $columns) . "\n";

to:

$line = date_default_timezone_set('Y-m-d H:i:s') . ' ' . implode("\t", $columns) . "\n";

Thought you might be interested not only in a bug report, but a bug fix! :)

Getting the request url

I need request url for check license. I can get url with $queryArgs[ 'site_url' ] = home_url(); but, user can change it by editing plugin file. Is possible to get request url to better?

Cannot Update Plugins: "Download Failed. Bad Request."

Hello,

I've followed the instructions to the letter, and the JSON info check works.

When I install a test plugin in WP, the newer version (in our repository using your system) is properly detected. But when we attempt to invoke the update, it fails with this error message:

"Download Failed. Bad Request." (or something to that effect).

The attempted download URL is truncated for display (... at the end), but the first portion appears correct.

Any help would be appreciated. This looks like a wonderful system!

Thanks,

Mark

Metadata format

Yahnis,

When doing some tests, I find that the WP API send out the metadata in a different format than this API. Some of that is being 'corrected' in the client, but IMHO, the API would be the more appropriate place as that's where WP does it too.

Would you be open to a pull request changing that around to make the metadata default to the same format as the WP API delivers ?

Smile,
Juliette

Idea: better support for delivering update packages via https AND fallback for http

Hi Yahnis,

I use your wp-update-server on mapsmarker.com and also implemented the plugin-update-checker within my plugin. A while ago I switched to https and also changed the endpoint within plugin-update-checker to https. This worked fine for customers on servers with current configurations but unfortunately it failed on lots of others which were using outdated libraries or configs for example.

As a consequence, I had to add the option 'sslverify' => false to the wp_remote_get-request for the plugin-update-checker which is bad as security got lowered - anyway this was the only way to be able offer checks for plugin updates via https.

On the server side I also tried to change the location of the update package to https - unfortunately I had to change this back to http, as there are so many servers out there which have troubles connecting to a server with a current configuration (especially SNI support only).

As I am dissatisfied with the security of my current implementation, I am looking for a way to improve this. I thought about enhancing the plugin-update-checker with a "pre-check" which tries to retrieve a file via https from my server and if that fails, switches the plugin update checker back to http. Furthermore in that case, an additional argument would be sent to the plugin update server which results in the plugin package also being delivered via http instead of https.

The advantage of this solution would be improved security for the majority of users and a fallback to lower security for users on outdated servers (which might have greater security risks due to that).

Disadvantage of that approach would be an additional request to the update server - anyway this is the only approach I can currently think of at the moment (test ssl capability -> check for updates -> download new package https or http depending on test results).

What do you think about that approach? I could imagine that other users would also be interested in a general solution for this issue, as more and more sites are switching to https and would run into the same issues when trying to use https for their plugin updates...
best,

Robert

feature request : language updates

Hi,

if anyone is willing to help i will be trying to implement a language folder so $slug-$lang_code.mo/.po files can be updated.

let me know if your interested because i'm a php noob lol....

Feature request: support for plugin icons

Hi @YahnisElsts,

just found that you added "Add the ability to show a plugin icon on the "Dashboard -> Updates" page" to the plugin update checker (YahnisElsts/plugin-update-checker@585f60d) - thanks a lot!

I wonder if the wp-update-server could also be enhanced to support this new feature? E.g. by automatically retrieving the needed icons form a new directory /icons for example?

If I can help here somehow, let me know!
best,

Robert

Server issue

If I go to the download link in my browser, it downloads it fine, but using cURL, I get the following error

400 Bad Request

You must specify a package slug.

Wordpress reports the download link as 'malformed'

request.log shows GET download - - - - action=download

Even though it has the slug in the URL. If I put the slug first and the action secion, the request log would show the slug and no action

woocommerce

How would I use this with woocommerce digital downloads?

Update Failed

Hi,

I'm running WordPress on an Amazon Linux AMI. Your plugin worked great until two weeks ago, but now when I try to update a plugin, WordPress notify me with this message:

"Update Failed: The package could not be installed. PCLZIP_ERR_BAD_FORMAT (-10) : Invalid End of Central Dir Record size : 16".

I also forced to download the plugin and what I got is a corrupted zip file.
Any suggestion on how to solve this?

Many thanks,
Andrea

Split logs per month / days

Hi Yahnis,

Forst - thanks for the great software ☺.

Second - how do you think about splitting Log to separate files based on a month or a day for make them more readable?

Regards, Max

Not showing update.

I have followed the instructions. When i go the the meta-data URL, I can see the meta data. The request logs show the request to the server. However WordPress doesn't show there is an update. The theme installed version 1.1, the update is 1.2. Can you please help with this.
Thank you

Error when accessing the APi

Not really sure if it is the plugin-updater component or the server , but I am getting an error Strict Standards: Only variables should be passed by reference in /home/domain/api/includes/extension-meta/extension-meta.php on line 51 when trying to access the API ..

Then, becasue of that error , I get

Warning: Cannot modify header information - headers already sent by (output started at /home/domain/api/includes/extension-meta/extension-meta.php:51) in /home/domain/api/includes/Wpup/UpdateServer.php on line 241

and then the normal json output ..

But I believe the errors / warning are preventing it from functioning well .

Readme error?

Hi,
in readme file probably should be Puc_v4_Factory instead PucFactory

Playing friendly with WordPress.org updates

Hi, sorry to bother you again!

I have an unusual use case perhaps but I am not sure how to go about it. I have a plugin which has a free version and a pro version. The free version gets updates from the standard wordpress.org update system, but I want the pro version to use the wp-update-server instead.

However the pro version is an extension of the free version (so it contains all the same features as the free version and adds some more), and because of this the plugins have the same slug.

So when the pro version of the plugin is trying to get updates it seems to be using the wordpress.org system and this is over-riding wp-update-server.

I know I can use code like:

add_filter( 'http_request_args', function ( $response, $url ) {
	if ( 0 === strpos( $url, 'https://api.wordpress.org/plugins/update-check' ) ) {
		$basename = plugin_basename( __FILE__ );
		$plugins  = json_decode( $response['body']['plugins'] );
		unset( $plugins->plugins->$basename );
		unset( $plugins->active[ array_search( $basename, $plugins->active ) ] );
		$response['body']['plugins'] = json_encode( $plugins );
	}
	return $response;
}, 10, 2 );

to disable updates completely for the plugin but this will disable updates for wp-update-server as well. Is there a solution to this? Thanks,

Changing theme directory name

I'm using the updater script within a theme, however when the updater runs it's adding six characters to the end of the directory name, for example:

ot-cadmus becomes ot-cadmus-TBZOiN

Do you have any idea what could be causing that?

Thanks in advance for any guidance.

Not showing update.

Hi,

I have testing wp-update-server and Puc_v4_Factory update checker on two sites.
The two site set up is the same.
On one site it is working well, but on the other site, I have the following error:
(I also has a theme with wp-update-server and theme-update-checker, same thing. One working the other is not.)

Warning: The URL [server]/wp-update-server/?action=get_metadata&slug=[plugin]&installed_version=1.0.3 does not point to a valid metadata file. WP HTTP Error: cURL error 28: Connection timed out after 10001 milliseconds in [server-path]/wp-content/plugins/[plugin]/vendor/plugin-update-checker/Puc/v4/UpdateChecker.php on line 297 Failed to retrieve plugin info from the metadata URL.

I did checked the url, it is working and it does not take more then 10 sec.

I also did the following:
"Here are a few things to check:

Verify that the correct theme slug is passed to the ThemeUpdateChecker constructor. Usually it should match the theme directory name.

Verify that you have the latest version of the update checker (1.2). -> I instelled 2017, so I think it is the newest, but where can i check it?

Try running $updateChecker->requestUpdate() and var_dump() the result. Does it return a ThemeUpate instance and does it have the expected version number? -> the error above.

Take a look at the external_theme_updates-$themeSlug option in the wp_options table. It should contain a serialized PHP object. Is it present and does it have the right version number? -> valid and correct"

WordPress 4.7.4
PHP 7.0.18 and 5.6.30
cURL 7.29.0

Any idea?

readme.txt and UTF-8 characters error

I detect problems with readme.txt and JSON encode. If you use spanish symbols like ñ or ó, when the plugin update checker decode it show ñ or ó, not ñ or ó.

Can you check it?

Kind regards.

Few notices on PHP 7

[27-Jan-2016 17:51:49 America/New_York] PHP Deprecated:  Methods with the same name as their class will not be constructors in a future version of PHP; Markdown_Parser has a deprecated constructor in /home/devsourc/public_html/dev/updates/includes/extension-meta/markdown.php on line 223
[27-Jan-2016 17:51:49 America/New_York] PHP Deprecated:  Methods with the same name as their class will not be constructors in a future version of PHP; MarkdownExtra_Parser has a deprecated constructor in /home/devsourc/public_html/dev/updates/includes/extension-meta/markdown.php on line 1696
[27-Jan-2016 17:51:50 America/New_York] PHP Deprecated:  Methods with the same name as their class will not be constructors in a future version of PHP; Markdown_Parser has a deprecated constructor in /home/devsourc/public_html/dev/updates/includes/extension-meta/markdown.php on line 223
[27-Jan-2016 17:51:50 America/New_York] PHP Deprecated:  Methods with the same name as their class will not be constructors in a future version of PHP; MarkdownExtra_Parser has a deprecated constructor in /home/devsourc/public_html/dev/updates/includes/extension-meta/markdown.php on line 1696

Made an Envato Compatible Server

Hello,

First of all thank you very much for this. It has helped me setup an update server for my envato plugins in just one day. I am really grateful to what you have offered. I have also open sourced my work here https://github.com/WPQuark/wpq-wp-update

I have a few favors to ask you:

  1. Right now composer package points to an outdated version. The current one has support for banners, which is awesome. So I used the latest commit tag to include in my composer, but would love to have a release.
  2. Instead of logging into file, I am logging into database. Any tips on generating graphs from the database? I have seen your stat package and was wondering where do I need to look for the chart queries?

Thank you once again.

Question about sending data during an "update" check

Got a weird question maybe. Either using the update server or with the plugin updater code. (would prefer from within the server updater for old plugin users)

For example when a plugin automatically checks for updates and its passing along a license key. Would it be possible to send a "message" back that gets displayed to the user like an admin notice ?

For example on an update check and the users license is expired to send them back a message to let them know its expired and that they need to renew ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.