yasiao/laravel-breadcrumb

一个简单的面包屑生成器。

v1.2.2 2022-05-06 05:54 UTC

This package is auto-updated.

Last update: 2024-09-06 11:29:06 UTC


README

一个简单的面包屑生成器。

安装

composer require yasiao/laravel-breadcrumb

配置

config/app.php

提供者

Yasiao\Breadcrumb\BreadcrumbServiceProvider::class

别名

'Breadcrumb' => Yasiao\Breadcrumb\BreadcrumbFacade::class

config/breadcrumb.php

php artisan vendor:publish
return [
    'breadcrumb-file-path' => app_path('Http/breadcrumb.php'),
    'default-template' => 'breadcrumb::bootstrap4',
    'ignore-undefined-breadcrumb' => false
];

基本用法

  1. "breadcrumb-file-path" 中创建面包屑文件。

  2. 在面包屑文件中定义面包屑。

    无参数

    // Home
    Breadcrumb::define('home', function ($breadcrumb) {
        $breadcrumb->add('Home', action('HomeController@index'));
    });

    带有一个参数

    // Home > $category->title
    Breadcrumb::define('category', function ($breadcrumb, $category) {
        $breadcrumb->add('Home', action('HomeController@index'));
        $breadcrumb->add($category->title, $category->url);
    });

    带有多个参数

    // Home > $category['title'] > $content->title
    Breadcrumb::define('content', function ($breadcrumb, $category, $content) {
        $breadcrumb->add('Home', action('HomeController@index'));
        $breadcrumb->add($category['title'], $category['url']);
        $breadcrumb->add($content->title, $content->url);
    });
  3. 渲染面包屑。

    无参数

    {!! Breadcrumbs::render('home') !!}

    带有一个参数

    {!! Breadcrumbs::render('home', $category) !!}

    带有多个参数

    {!! Breadcrumbs::render('home', $category, $content) !!}

高级用法

  1. 面包屑使用特殊模板。

    {!! Breadcrumbs::setTemplate('bootstrap3')->render('home') !!}