meilleur gestion name/slug, niveaux de profondeur pour le breadcrumb

This commit is contained in:
Olivier Legat 2021-03-15 17:51:01 +01:00
parent d4fba24e4a
commit 9907837b96
5 changed files with 14 additions and 9 deletions

View file

@ -1,6 +1,6 @@
@hasSection('breadcrumb')
@if(Breadcrumbs::exists(app()->view->getSections()['breadcrumb']))
{{ Breadcrumbs::render(app()->view->getSections()['breadcrumb'], $brParam ?? null, $parentBrParam ?? null ) }}
{{ Breadcrumbs::render(app()->view->getSections()['breadcrumb'], $brParam ?? null) }}
@endif
@elseif(Breadcrumbs::exists(request()->route()->getName()))
{{ Breadcrumbs::render(request()->route()->getName()) }}

View file

@ -1,6 +1,6 @@
@hasSection('breadcrumb')
@if(Breadcrumbs::exists(app()->view->getSections()['breadcrumb']))
{{ Breadcrumbs::view('breadcrumbs::json-ld', app()->view->getSections()['breadcrumb'], $brParam ?? null, $parentBrParam ?? null ) }}
{{ Breadcrumbs::view('breadcrumbs::json-ld', app()->view->getSections()['breadcrumb'], $brParam ?? null) }}
@endif
@elseif(Breadcrumbs::exists(request()->route()->getName()))
{{ Breadcrumbs::view('breadcrumbs::json-ld', request()->route()->getName()) }}

View file

@ -1,4 +1,4 @@
@extends('layouts.layout',['brParam' => $product->slug, 'parentBrParam' => $product->range->slug])
@extends('layouts.layout',['brParam' => $product])
@section('title', $product->name)

View file

@ -1,4 +1,4 @@
@extends('layouts.layout',['brParam' => $range->slug])
@extends('layouts.layout',['brParam' => $range])
@section('title', $range->name)

View file

@ -33,17 +33,22 @@ Breadcrumbs::for('ranges', function ($trail) {
$trail->parent('home');
$trail->push(__('Gammes'), route('ranges'));
});
Breadcrumbs::for('products', function ($trail) {
$trail->parent('home');
$trail->push(__('Tous les produits'), route('products'));
});
// Second level
Breadcrumbs::for('range', function ($trail, $gammeSlug) {
Breadcrumbs::for('range', function ($trail, $gamme) {
$trail->parent('ranges');
$trail->push( ucfirst(str_replace('-',' ',$gammeSlug)) , route('range', ['rangeSlug' => $gammeSlug]));
$trail->push( $gamme->name , route('range', ['rangeSlug' => $gamme->slug]));
});
// Third Level
Breadcrumbs::for('product', function ($trail, $productSlug, $gammeSlug) {
$trail->parent('range', $gammeSlug);
$trail->push( ucfirst(str_replace('-',' ',$productSlug)) , route('product', ['productSlug' => $productSlug]));
Breadcrumbs::for('product', function ($trail, $product) {
$trail->parent('range', $product->range);
$trail->push( $product->name, route('product', ['productSlug' => $product->slug]));
//ucfirst(str_replace('-',' ',$productSlug))
});