Breadcrumb builder and controller integration for CodeIgniter 4 projects.
- Reusable breadcrumb builder service
- Ordered breadcrumb items with a single active item
- Named templates for different application areas
- Optional trait for controller integration
- Compatible with CodeIgniter 4.7.2+
Install the package with Composer:
composer require domprojects/codeigniter4-breadcrumbCreate and render a breadcrumb manually:
<?php
$breadcrumb = single_service('breadcrumb');
$breadcrumb
->add('Home', url_to('home'))
->add('Blog', url_to('blog.index'))
->add('Article');
echo $breadcrumb->render();The package includes a HasBreadcrumb trait to simplify breadcrumb handling in controllers.
<?php
namespace App\Controllers;
use domProjects\CodeIgniterBreadcrumb\Traits\HasBreadcrumb;
use CodeIgniter\Controller;
abstract class BaseController extends Controller
{
use HasBreadcrumb;
}Example in a controller:
<?php
$this
->breadcrumbRoot('Home', url_to('home'))
->breadcrumbController('Blog', 'blog.index')
->breadcrumbAppend('Article');
$data['breadcrumb'] = $this->renderBreadcrumb();Default config ships with three template names:
defaultfrontendbackend
Get a configured template in a controller:
<?php
$data['breadcrumb'] = $this->renderBreadcrumb(
$this->getBreadcrumbTemplate('backend')
);src/
Breadcrumb.php
Config/
Breadcrumb.php
Services.php
Traits/
HasBreadcrumb.php
MIT