avxman / breadcrumbs
The module breadcrumbs for laravel >=8.0
Installs: 9
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/avxman/breadcrumbs
Requires
- php: >=8.0
- laravel/framework: ^8.0
This package is auto-updated.
Last update: 2025-10-10 03:36:56 UTC
README
Работа с хлебными крошками на сайте. Вывод и сохранение хлебных хрошек.
Установка модуля с помощью composer
composer require avxman/breadcrumbs
Настройка модуля
После установки модуля не забываем объязательно запустить команды artisan
php artisan vendor:publish --tag="avxman-breadcrumbs-migrate" и после php artisan migrate.
Это установит таблицу хлебных крошек для получения и сохранения данных.
Команды artisan
- Выгружаем все файлы
php artisan vendor:publish --tag="avxman-breadcrumbs-all"
- Выгружаем миграционные файлы
php artisan vendor:publish --tag="avxman-breadcrumbs-migrate"
- Выгружаем файлы моделек
php artisan vendor:publish --tag="avxman-breadcrumbs-model"
- Выгружаем шаблонные файлы
php artisan vendor:publish --tag="avxman-breadcrumbs-view"
Методы
Инициализация или сохранение хлебных крошек (очерёдность вызова метода - первичная)
init()- инициализация хлебных крошек по выборке модели и idsave()- сохраняем список ссылок хлебных крошек определённой модельки и id (после вызова остальные методы не вызываются)
Дополнительные (очерёдность вызова метода - второстепенная)
all()- получаем все ссылки хлебных крошек инициализированной моделькиexceptLast()- получаем все родительские ссылки за исключением домашнейonlyLast()- получаем последнюю ссылкуsetView- перезаписываем шаблон вывода хлебных крошекsetAddHome()- выводить домашнюю ссылку
Вывод (очерёдность вызова метода - последняя)
toCollection()- получаем результат в виде коллекцииtoArray()- получаем результат в виде массиваtoJson()- получаем результат в виде jsontoHtml()- получаем результат в виде html
Примеры получения результатов
use App\Models\User;
use Avxman\Breadcrumb\Facades\BreadcrumbFacade;
$breadcrumbs = BreadcrumbFacade::init(User::class, 1)->setAddHome(false)->all()->toHtml();
$breadcrumbs = BreadcrumbFacade::init(User::class, 1)->all()->toHtml();
$breadcrumbs = BreadcrumbFacade::init(User::class, 1)->onlyLast()->toHtml();
$breadcrumbs = BreadcrumbFacade::init(User::class, 1)->exceptLast()->toHtml();
$breadcrumbs = BreadcrumbFacade::init(User::class, 1)->toCollection();
$breadcrumbs = BreadcrumbFacade::init(User::class, 1)->toArray();
$breadcrumbs = BreadcrumbFacade::init(User::class, 1)->toJson();
$breadcrumbs = BreadcrumbFacade::init(User::class, 1)->toHtml();
BreadcrumbFacade::save(
collect()->push(
['url'=>'https://google.ua/', 'name'=>'Google'],
['url'=>null, 'name'=>'NEW']
),
User::first());
$breadcrumbs = BreadcrumbFacade::init(User::class, 1)->toHtml();
Вызов во views
{!! BreadcrumbFacade::init(User::class, 1)->all()->toHtml() !!}
{!! BreadcrumbFacade::init(User::class, 1)->toJson(); !!}
{!! BreadcrumbFacade::init(User::class, 1)->toHtml(); !!}
{{ BreadcrumbFacade::save(
collect()->push(
['url'=>'https://google.ua/', 'name'=>'Google'],
['url'=>null, 'name'=>'NEW']
),
User::first());
}}