This Laravel 4 package enables you to get an url to a revisioned asset., (*3)
That sounds a bit vague, right? Let me clear it up by showing an example.
Calling this provided method Asset::getUrl('admin.css') returns /assets/admin.0ce5cb43.css, (*4)
This package assumes that your asset pipeline:
- saves all of your assets in one public folder.
- puts a random string in the filename of every asset as a cache-busting mechanism, (*5)
Spatie is a webdesign agency in Antwerp, Belgium. You'll find an overview of all our open source projects on our website., (*6)
Support us
Learn how to create a package like this one, by watching our premium video course:, (*7)
We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall., (*10)
Postcardware
You're free to use this package (it's MIT-licensed), but if it makes it to your production environment you are required to send us a postcard from your hometown, mentioning which of our package(s) you are using., (*11)
Our address is: Spatie, Kruikstraat 22, 2018 Antwerp, Belgium., (*12)
The best postcards will get published on the open source page on our website., (*13)
Installation
The package can be installed through Composer:, (*14)
You can publish the configuration file using this command:, (*17)
php artisan config:publish spatie/asset-helper
A configuration-file with some sensible defaults will be placed in your config/packages directory:, (*18)
return
[
/**
* The url that points to the directory were your assets are stored
*
*/
'assetDirectoryUrl' => '/assets',
];
Usage
Asset::getUrl($nonRevisionedAssetName) takes a non-revisioned asset name and it returns the url to the revisioned asset., (*19)
Example
Let's assume the public path of your website is /home/forge/yourwebsite.be/public and that your asset pipeline stores the minified, uglified, ... and whatnot assets in this directory: /home/forge/yourwebsite.be/public/assets, (*20)
Suppose this is the contents of that directory:
- admin.0ce5cb43.css
- admin.defer.adc60631.js
- admin.head.1954b61c.js
- front.0b4c09c7.css
- front.defer.1ba6b072.js
- front.head.1954b61c.js, (*21)
As a cache-busting mechanism your asset pipeline probably puts a random string in the filename of the asset. In the example above this is '0ce5cb43', 'adc60631', '1954b61c.js', ..., (*22)