songphi / cakephp-less
Cakephp Less CSS compiler (forked from cakephp/less because of leafo/lessphp doesn't compatible with Twitter Bootstrap 3. Now oyejorge/less.php is being used instead)
Installs: 456
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 18
Type:cakephp-plugin
Requires
- php: >=5.3.0
- composer/installers: *
- oyejorge/less.php: ~1.7
This package is not auto-updated.
Last update: 2024-12-21 17:44:08 UTC
README
This little Helper converts your .less files into .css without relying on Node.js or client-side parsing. Everything is compiled on the server, cached, and served as regular css through PHP.
Forked from flug/CakeLess because of leafo/lessphp doesn't compatible with Twitter Bootstrap 3. Now oyejorge/less.php is using instead
Installation
Git Submodule
In your cakephp's root directory type
git submodule add https://github.com/SongPhi/cake-lessphp.git app/Plugin/CakeLess
git submodule init
git submodule update
Git clone
In your cakephp's root directory type
git clone https://github.com/SongPhi/cake-lessphp.git app/Plugin/CakeLess
Composer
In your root cakephp, edit your composer.json to fit:
"require": { "composer/installers": "*", "songphi/cakephp-less": "dev-master", "oyejorge/less.php": "~1.7" }, "extra": { "installer-paths": { "app/Plugin/{$name}/": ["songphi/cakephp-less"] } }
Plugin Loading
In your app/Config/bootstrap.php add this line:
CakePlugin::load('CakeLess');
It doesn't need if you already have this line:
CakePlugin::loadAll();
Create cache and less folders
- Create a folder
app/webroot/less
- Create a folder
app/tmp/cache/less
- Apply
chmod 777
to yourcss
folder. (The Less Helper will place all compiled css files in your css-directory)
Usage
Where you want to use LESS files, add the helper. Usually this will be your AppController
.
public $helpers = array('CakeLess.Less');
Next, simply add the less files to your views:
echo $this->Less->css('yourfile');
or if the less file is located in the webroot of a plugin
echo $this->Less->css('yourfile',array('plugin' => 'PluginFolderName'));
or
echo $this->Less->css(array( 'bootstrap/bootstrap', 'prettify', ) );