Description
WordPress asset versioning can be a double-edged sword: on one-hand, it’s extremely effective for cache-busting, ensuring you aren’t sharing stale scripts or styles to your visitors. On the other hand, having to manually increment a version number is a pain (even as a constant), often resulting in a version control history full of “bumping the version number” commits.
Dynamic Asset Versioning aims to simplify this process: if an enqueued asset doesn’t have an explicit version number, the plugin will get the timestamp of the last time the file was changed and use that as the version number. It’s easy: you touch the file, the version number is updated automatically.
Usage
Once Dynamic Asset Versioning is active, it will automatically determine version numbers based on file modification time for any [non-core] files that have been enqueued using wp_enqueue_style()
or wp_enqueue_script()
.
Example
wp_enqueue_style(
'my-theme-styles',
get_template_directory_uri() . '/assets/css/my-styles.css',
array( 'some-other-styles' ),
false, // Don't worry about it, Dynamic Asset Versioning has you covered!
'screen'
);
Special thanks
A special thanks goes out to 10up, who helped inspire the original concept of this plugin.
Installation
There are two ways to install Dynamic Asset Versioning in your WordPress site: as a must-use (MU) or a standard plugin.
As a must-use (MU) plugin (recommended)
- Download or clone the repository into
wp-content/mu-plugins
. - As MU plugins cannot run in a sub-directory, move dynamic-asset-versioning.php directly into the
wp-content/mu-plugins
directory.- Alternately, you may prefer to create a symbolic link (“symlink”) in wp-content/mu-plugins that points to dynamic-asset-versioning.php.
As a standard WordPress plugin
- Download or clone the repository into
wp-content/plugins
. - Activate the plugin through the WordPress plugins screen.
Contributors & Developers
“Dynamic Asset Versioning” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Dynamic Asset Versioning” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
0.1.0
Initial public release.