netflex/breadcrumbs

Netflex 中创建面包屑导航的实用工具。

v5.0.2 2023-08-25 10:39 UTC

This package is auto-updated.

Last update: 2024-09-16 16:13:54 UTC


README

Stable version Build status License: MIT Contributors Downloads

[只读] Netflex Breadcrumbs 组件的子树拆分(见 netflex/framework

用于在 Netflex 页面中创建面包屑导航的实用类。

目录

安装

composer require netflex/breadcrumbs

使用

use Netflex\Breadcrumbs\Breadcrumb;
use Netflex\Pages\Page;

// Create breadcrumb based on current page
$page = Page::current();
$options = [];
$breadcrumb = new Breadcrumb($page, $options);

// Get breadcrumb data
$breadcrumb = $breadcrumb->get();

返回的面包屑数据将格式化为以下形式

Illuminate\Support\Collection Object ( 
  [items:protected] => Array ( 
    [0] => Array ( 
      [label] => 'Home'
      [originalLabel] => 'Home'
      [path] => '/'
      [id] => 10000 
      [type] => 'page'
      [published] => true 
      [current] => false
    ) 
    [1] => Array ( 
      [label] => 'Example' 
      [originalLabel] => 'Example' 
      [path] => '/example' 
      [id] => 10027 
      [type] => 'page' 
      [published] => true 
      [current] => true
    )
  )
)

选项

实例化类时,可以将选项作为数组传递。

在 Blade 组件中的示例用法

<nav class="Breadcrumb" aria-label="Breadcrumb">
  <ol class="Breadcrumb__list">
    @foreach ($breadcrumb as $item)
      @if ($item['current'])
        <li class="Breadcrumb__item Breadcrumb__item--active">
          <a class="Breadcrumb__link" href="{{ $item['path'] }}" aria-current="page">
            {{ $item['label'] }}
          </a>
        </li>
      @else
        <li class="Breadcrumb__item">
          <a class="Breadcrumb__link" href="{{ $item['path'] }}">
            {{ $item['label'] }}
          </a>
        </li>
      @endif
    @endforeach
  </ol>
</nav>