After updating WP keeps nagging about a newer version. Why?

I updated WP to version 3.9.2 (currently the latest) via Git which works fine. However, in the admin it keeps on telling me “a newer version is available”. After some digging somehow it appears to be related to the language pack. I’ve got WPLANG set to nl_NL.

In the wp-includes/update.php file wp_version_check() checks against the WordPress server for newer versions using a URL like this:

http://api.wordpress.org/core/version-check/1.7/?version=3.9.2&php=5.5.11&mysql=5.5.15&local_package=&blogs=1&users=2&multisite_enabled=0&locale=nl_NL

Click it and you’ll notice it offers a response with the status “upgrade”, yet the version is the same!? If you remove locale argument at the end or leave it empty (URL below), you’ll see it will answer with a status value of “latest” and thus not triggering update nags.

http://api.wordpress.org/core/version-check/1.7/?version=3.9.2&php=5.5.11&mysql=5.5.15&local_package=&blogs=1&users=2&multisite_enabled=0&locale=

I tried flushing the WP cache (update transients) but nothing changes. Anybody gets what is going on here? Thanks.

2 s
2

The issue is, there is no value for local_package in the URL.

At first I thought this might be a bug. Similar issues have been reported before (see here and here.

I then stumbled on comment in trac ticket 8729 where user nbachiyski explains how localization should work:

There are two ways to localize WordPress:

  1. Drop some translation files.
  2. Install localized package.

Whenever possible we try to enforce the 2nd way.

So, here is how the whole thing works:

  1. Both the current locale and the current localized package, installed, are sent to the API.
  2. If a localized package for the user’s locale is available and the user doesn’t have the localized package, the user is prompted to
    upgrade or to hide updgrade.

You can either install the Dutch version of WordPress or hide the updates for it (/wp-admin/update-core.php> Hide this update).

Leave a Comment