Given array of file asset URLs return them with cache-busting version strings
URLs that aready have query strings or URLs with scheme (i.e. https://) are ignored,
except for URLs that already have a core version query string, i.e. ?v=3.0.227
may be converted to a different version string when appropriate.
URLs that do not resolve to a physical file on the file system, relative URLs, or URLs that are outside of ProcessWire’s web root, are only eligible to receive a common/shared version in the URL (like the core version).
To set a different default value for the $useVersion
argument, you can populate
the $config->useVersionUrls
setting in your /site/config.php with the default
value you want to substitute.
Available since version 3.0.227.
Example
foreach($config->versionUrls($config->styles) as $url) {
echo "<link rel='stylesheet' href='$url' />";
}
// there is also this shortcut for the above
foreach($config->styles->urls() as $url) {
echo "<link rel='stylesheet' href='$url' />";
}
Usage
// basic usage
$array = $config->versionUrls($urls);
// usage with all arguments
$array = $config->versionUrls($urls, $useVersion = null);
Arguments
Name | Type(s) | Description |
---|---|---|
urls | array, FilenameArray, WireArray, \ArrayObject | Array of URLs to file assets such as JS/CSS files. |
useVersion (optional) | bool, null, string | What to use for the version string (
|
Return value
array
Array of URLs updated with version strings where needed
$config methods and properties
API reference based on ProcessWire core version 3.0.236