breadcrumb-for-laravel
A simple breadcrumb for laravel., (*1)
Installation
composer require hiiicomtw/breadcrumb-for-laravel:dev-master
Configuration
config/app.php
providers:, (*2)
Hiiicomtw\Breadcrumb\BreadcrumbServiceProvider::class
aliases:, (*3)
'Breadcrumb' => Hiiicomtw\Breadcrumb\BreadcrumbFacade::class
config/breadcrumb.php
You can change the "default-template" key by value 'breadcrumb::template' 、 'breadcrumb::sample' or 'breadcrumb::backend', (*4)
php artisan vendor:publish
return [
'breadcrumb-file-path' => app_path('Http/breadcrumb.php'),
'default-template' => 'breadcrumb::template',
'ignore-undefined-breadcrumb' => false
];
views/vendor/breadcrumb
You can edit the views where in "resources/views/vendor", (*5)
Base Usage
-
Create the breadcrumb file in the "breadcrumb-file-path"., (*6)
-
Define breadcrumbs in the breadcrumb file., (*7)
Without parameters:, (*8)
// Home
Breadcrumb::define('home', function ($breadcrumb) {
$breadcrumb->add('Home', action('HomeController@index'));
});
With a parameter:, (*9)
// Home > $category->title
Breadcrumb::define('category', function ($breadcrumb, $category) {
$breadcrumb->add('Home', action('HomeController@index'));
$breadcrumb->add($category->title, $category->url);
});
With parameters:, (*10)
// Home > $category['title'] > $content->title
Breadcrumb::define('content', function ($breadcrumb, $category, $content) {
$breadcrumb->add('Home', action('HomeController@index'));
$breadcrumb->add($category['title'], $category['id']);
$breadcrumb->add($content->title, $content->url);
});
-
Render breadcrumbs., (*11)
Without parameters:, (*12)
{!! Breadcrumbs::render('home') !!}
With a parameter:, (*13)
{!! Breadcrumbs::render('home', $category) !!}
With parameters:, (*14)
{!! Breadcrumbs::render('home', $category, $content) !!}
Advanced Usage
-
The breadcrumb use the special template.blade.php in resources/views., (*15)
{!! Breadcrumbs::setTemplate('path/to/view')->render('home') !!}