grohiro/laravel-blade-macro

Laravel Blade `@macro` directive.

4.0.0 2017-10-02 15:05 UTC

README

  • Available for Laravel 5.3+
  • (also 5.0+, but not tested) (not working) (2017/10/3)

LaravelBladeMacro creates a reusable template block in a blade template file.

Usage

form.blade.php

@macro('bootstrap_input', $type, $field, $label = "", $opts = ['class' => 'form-control'])
<div class="form-group">
  <label class="col-sm-1 control-label">{{$label}}</label>
  <div class="col-sm-8">
    {!! Form::$type($field, '', $opts) !!}
  </div>
</div>
@endmacro

{!! Html::bootstrap_input('text', 'username', 'Username') !!}
{!! Html::bootstrap_input('text', 'email', 'E-Mail', ['required' => 'required', 'class' => 'form-control']) !!}

Requirements

Install

$ composer require 'grohiro/laravel-blade-macro'

config/app.php

$providers = [
  // 
  Grohiro\LaravelBladeMacro\BladeMacroServiceProvider::class,
];