Assets compressor for Yii Framework
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Assets compressor for Yii Framework 1.x


Compressor for JS/CSS files using YUI compressor

Uses a modified version of for compression adapted to Yii

Uses a modified version of to rewrite css urls adapted to Yii

How to use

in your config define the class of clientScript component to use CompressorClientScript

return array(
	'class'=>'ext.CompressorClientScript.CompressorClientScript',//use whatever location you put the extension
	//the following options are optional and the values defined in this example are the default ones
	'compress'=>true,//wheter to compress the files
	//see YUICompressor class for more details
		//Insert a line breaks after '}' characters for css files or 
		//Insert a line break after the specified column number for js files
		//Display informational messages and warnings. (useful for cleaning up your JS)
		//Minify only, no symbol obfuscation. Valid for js files
		//Preserve unnecessary semicolons (such as right before a '}'). Valid for js files
		//Disable all the built-in micro optimizations. Valid for js files
		//path to the java binary
		//you can use, for example, 'C:\Program Files (x86)\Java\jre7\bin\java.exe' if you are windows

And that's it

How to clear the cache?

Just clean up protected/runtime/compressor folder and it will recreate the files

How does it work?

It uses file_get_contents to get the files, so it can be either on your machine or load from external sources

It creates a compressed file in protected/runtime/compress for each page and then publishes it using assetsManager

For css files, it rewrites the css url's