Home Plugins resource versioning
Resource Versioning logo

Resource Versioning

by Viktor Szépe on WordPress.org

Turn Query String Parameters into file revision numbers.

(1)

“It’s important to make resources (images, scripts, stylesheets, etc.) cacheable.”

Steve Souders

It is much easier to use a CDN without Query String Parameters.
This plugins alters only local resources’ URL-s.
The ver Query String Parameter will be inserted into the filename.

For example jquery.min.js?ver=1.10 becomes jquery.min.110.js.

To reverse this in the web server add this line to your nginx config:

server {
    location ~ ^(.+)\.\d\d+\.(js|css|png|jpg|jpeg|gif|ico)$ {
        #try_files $uri $1.$2 /index.php?$args;
        try_files $uri $1.$2 =404;
    }
}

Or to your Apache configuration or .htaccess file.

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)\.\d\d+\.(js|css|png|jpg|jpeg|gif|ico)$ $1.$2 [NC,L]

Testing the plugin before live usage

You can test the plugin by replacing the two add_filter() calls with this

require_once( dirname( dirname( dirname( dirname( __FILE__ ) ) ) ) . '/wp-load.php' );
wp();
echo o1_revving_src( $argv[1] ) . PHP_EOL;

Then start it from CLI: php revving.php

Links

Development of this plugin goes on on GitHub.

Active installations10+
Weekly downloads
10-9.09%
Version0.3.0
Last updated7/21/2018
WordPress version4.0
Tested up to4.9.26
Tags
Apachefilenginxresourcevarnish
Resource Versioning | Plugin0