[扩展推荐] Laravel Breadcrumbs 面包屑导航

file

面包屑就是那种只有在我需要的时候才会考虑的东西之一,然后我感觉每次我都会在应用中重新创建车轮,是时候寻找一个通用的解决方案了。

Laravel Breadcrumbs 是 Dave James Miller 开发的一个扩展包,可以让你通过一个简单的 API 便捷地给你的应用添加面包屑导航:

// Home
Breadcrumbs::for('home', function ($trail) {
    $trail->push('Home', route('home'));
});

// Home > About
Breadcrumbs::for('about', function ($trail) {
    $trail->parent('home');
    $trail->push('About', route('about'));
});

// Home > Blog
Breadcrumbs::for('blog', function ($trail) {
    $trail->parent('home');
    $trail->push('Blog', route('blog'));
});

要渲染面包屑,你可以从 Laravel Breadcrumb 提供的以下几个模板中选择:

  • breadcrumbs::bootstrap4
  • breadcrumbs::bootstrap3
  • breadcrumbs::bootstrap2
  • breadcrumbs::bulma
  • breadcrumbs::foundation6
  • breadcrumbs::materialize
  • breadcrumbs::json-ld
  • 自定义的视图路径,例如: partials.breadcrumbs

根据你需要哪个模板,你可以在发布的配置文件 config/breadcrumbs.php 中配置:

    'view' => 'breadcrumbs::bootstrap4',

最后在你的视图中渲染面包屑:

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

这个包甚至支持用于 SEO 目的的 JSON-LD 结构化数据,这是一个非常有用的功能:

<head>
    ...
    {{ Breadcrumbs::view('breadcrumbs::json-ld', 'category', $category) }}
    ...
</head>

了解更多:

Laravel Breadcrumb 包是高度可定制的,同时在 readme 文件中有很多文档选项。 请查看 官方 GitHub 仓库 来获取完整文档和安装说明。

此文章首发于 Laravel News

共享


Practice makes perfect.

原文地址:https://laravel-news.com/laravel-breadcr...

译文地址:https://learnku.com/laravel/t/15483/exte...

本帖已被设为精华帖!
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!