benoitmariaux / bcm-breadcrumbbundle
Provides tools to create breadcrumb
Installs: 70
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 1
Open Issues: 2
Type:symfony-bundle
Requires
- symfony/framework-bundle: >=2.2
This package is not auto-updated.
Last update: 2025-06-17 08:03:02 UTC
README
BCMBreadcrumbBundle allows you to generate breadcrumbs easily for your Symfony project.
Installation
With composer, add:
{ require: { "benoitmariaux/bcm-breadcrumbbundle": "dev-master" } }
Then enable it in your kernel:
// app/AppKernel.php public function registerBundles() { $bundles = array( ... new BCM\BreadcrumbBundle\BCMBreadcrumbBundle(), ...
Usage
First step : the routes
You have to configure two attributes (label
and parent
) to defaults
in routes you want to add to your breadcrumb :
homepage: pattern: / defaults: _controller: AcmeDemoBundle:Default:home label: homepage # no parent for homepage articles: pattern: /articles defaults: _controller: AcmeDemoBundle:Article:list label: ARTICLES parent: homepage article: pattern: /articles/show/{article_id} defaults: _controller: AcmeDemoBundle:Article:article label: '{article_title}' parent: articles
Second step : the controller
Inject all parameters you need for current breadcrumb routes and labels
$breadcrumb = $this->get('bcm_breadcrumb.manager')->render(array( 'article_title' => $article->getTitle(), // useful for article route label 'article_id' => $article->getId() // useful for article route pattern )); return $this->render('AcmeDemoBundle:Default:article.html.twig', array( 'article' => $article, 'breadcrumb' => $breadcrumb ));
Last step : the view
{{ breadcrumb|raw }}
Your own view
The default view is:
vendor/benoitmariaux/bcm-breadcrumbbundle/BCM/BreadcrumbBundle/Resources/views/bcm-breadcrumb.html.twig
You can overwrite it by creating your own here:
app/Resources/BCMBreadcrumbBundle/views/bcm-breadcrumb.html.twig
Label translation
You can define translations for your labels with the default domain breadcrumb
:
- breadcrumb.fr.xliff
- breadcrumb.de.xliff