[扩展推荐] 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

共享

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

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

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

本帖已被设为精华帖!
本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!