A small package that adds support for compiling Haml templates to Laravel via MtHaml. Both vanilla php and Blade syntax is supported within the Haml.
"bkwld/laravel-haml": "~2.0"
) and do a composer install.'Bkwld\LaravelHaml\ServiceProvider',
You can set MtHaml environment, options, and filters manually. To do so:
php artisan config:publish bkwld/laravel-haml
and edit at /app/config/packages/bkwld/laravel-haml/config.phpphp artisan vendor:publish
and edit it at /config/haml.php. For instance, to turn off auto-escaping:
'mthaml' => array(
'environment' => 'php',
'options' => array(
'enable_escaper' => false,
),
'filters' => array(),
),
Laravel-Haml registers the ".haml", ".haml.php", ".haml.blade", and ".haml.blade.php" extension with Laravel and forwards compile requests on to MtHaml. It compiles your Haml templates in the same way as Blade templates; the compiled template is put in app/storage/views. Thus, you don't suffer compile times on every page load.
In other words, just put your Haml files in the regular views directory and name them like "whatever.haml". You reference them in Laravel like normal:
View::make('home.whatever')
for app/views/home/whatever.haml
view('home.whatever')
for resources/views/home/whatever.haml
The Haml view files can work side-by-side with regular PHP views. To use Blade templating within your Haml, just name the files with ".haml.blade" or ".haml.blade.php" extensions.
Read the Github project releases for release notes.