stephanecoinon/autoversion

This package is abandoned and no longer maintained. No replacement package was suggested.
There is no license information available for the latest version (0.1.0) of this package.

Suffix asset file name with a timestamp to invalidate cache if a new asset is uploaded on the server.

0.1.0 2014-07-16 22:01 UTC

This package is auto-updated.

Last update: 2021-12-19 07:46:50 UTC


README

Suffix asset file names with a timestamp to invalidate cache if a new asset is uploaded on the server.

When you include assets like images, stylesheets or javascripts, your website visitors might not see new changes depending on their browser cache settings. AutoVersion will force the cache to invalidate.

Installation

In your terminal, just run:

composer require "stephanecoinon/autoversion":"dev-master"

Configuration

This package is framework agnostic, the configuration process is:

// Auto-load composer packages
require 'vendor/autoload.php';

// Configure the document root
AutoVersion::setDocumentRoot('/var/www/html/public');

And if you're using the excellent Laravel framework, it's even simpler: just add the service provider in app/config/app.php:

'providers' => array(

	// Your current providers are here ...

	'Coinon\AutoVersion\AutoVersionServiceProvider',
),

The service provider will take care of:

  • automatically loading the package
  • configuring the document root to public_path()
  • adding the AutoVersion class as an alias making it accessible easily from anywhere

Usage

In your views, just call:

// $pathToAsset is relative to the document root configured above
AutoVersion::asset($pathToAsset);

for example:

<link rel="stylesheet" href="<?=AutoVersion::asset('css/main.css') ?>">

Or with Laravel blade:

{{ HTML::style(AutoVersion::asset('css/main.css')) }}