Laravel Breadcrumbs 自動麪包屑導航

說明

laravel-breadcrumbs 可爲你的 Laravel 項目快速定製擁有 Bootstrap 風格的麪包屑導航。

本文章由 The EST Group 成員 @Kelvin 撰寫, 首發地爲 PHPHub 社區.

文章的 Demo 項目

截圖

運行

Demo 代碼請見:

https://github.com/CycloneAxe/est-breadcrumbs-demo

請參照此文檔運行 Demo:

https://phphub.org/topics/1902

文章概覽

  1. 安裝;

  2. 配置 breadcrumbs;

  3. 生成配置文件;

  4. 基本使用

1. 安裝

1). 使用 composer 安裝:

composer require davejamesmiller/laravel-breadcrumbs

關於 composer require 的安裝方式,請見 這篇文章

2). 修改 config/app 文件,在 providers 數組內追加如下內容:

'providers' => [
    ...
    DaveJamesMiller\Breadcrumbs\ServiceProvider::class,],

3). 修改 config/app 文件,在 aliases 數組內追加如下內容:

'aliases' => [
    ...
    'Breadcrumbs' => DaveJamesMiller\Breadcrumbs\Facade::class,],

2. 配置 breadcrumbs

app/Http 文件夾內創建 breadcrumbs.php 文件,內容如下:

<?php// HomeBreadcrumbs::register('home', function($breadcrumbs){
    $breadcrumbs->push('Home', route('home'));});// Home > BlogBreadcrumbs::register('blog', function($breadcrumbs){
    $breadcrumbs->parent('home');
    $breadcrumbs->push('Blog', route('blog'));});

3. 生成配置文件

擴展包默認使用 Bootstrap 3 版本, 你也可以通過修改配置信息,來兼容 Bootstrap 2.

運行此命令生成配置文件:

php artisan vendor:publish

接着編輯 config/breadcrumbs.php, 指定 Bootstrap 版本:

'view' => 'breadcrumbs::bootstrap3',

views 字段允許設置的值爲:

  • Bootstrap 3: breadcrumbs::bootstrap3

  • Bootstrap 2: breadcrumbs::bootstrap2

4. 基本使用

1). 修改 app/HTTP/routes.php, 添加相對應的 Route.

注意這裏新增的 Route 需要定義別名, 因爲 breadcrumbs 在生成時會調用了輔助方法 route(), 而此方法是根據 Route 別名來生成對應 Url 的.

Route::get('home', [
   'as' => 'home',
   function () {
       return view('home');
   }]);Route::get('blog', [
   'as' => 'blog',
   function () {
       return view('home');
   }]);

2). 在需要展示 breadcrumbs 的頁面中調用來渲染:

{!! Breadcrumbs::render('blog'); !!}

3). 最終生成的效果如下:


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章