Skip to content
This repository has been archived by the owner on Nov 13, 2019. It is now read-only.

The CnertaBreadcrumbBundle, for Symfony2, provide an easy way to create a breadcrumb with KnpMenuBundle

Notifications You must be signed in to change notification settings

AgrosupDijon-DSI/BreadcrumbBundle

Repository files navigation

/!\ Repository not maintained and outdated /!\

CnertaBreadcrumbBundle

The CnertaBreadcrumbBundle provide an easy way to create a breadcrumb with KnpMenuBundle for Symfony2.

If you want to take a look, this Symfony2 app is my Sandbox, DemoMenu.

SensioLabsInsight

Build Status Latest Stable Version Latest Unstable Version

Install the Bundle

  1. Add the sources in your composer.json
     "require": {
        // ...
        "cnerta/breadcrumb-bundle": "2.1.*"
    }
  1. Then add it to your AppKernel class::
    // in AppKernel::registerBundles()
    $bundles = array(
        // ...
        new Cnerta\BreadcrumbBundle\CnertaBreadcrumbBundle(),
        // ...
    );

Default configuration

You don't have to configure anything. This part is only usefull if you want to setup a default breadcrumb template.

config.yml

    cnerta_breadcrumb:
        twig:
            template: CnertaBreadcrumbBundle::cnerta_breadcrumb.html.twig

Rendering Breadcrumb

First create your menu with the KnpMenuBundle.

Next, in your twig template call :

    {{ cnerta_breadcrumb_render('MyWonderfullBundle:Builder:Menu') }}

Or if you just want to get the breadcrumb array and make your stuff :

    {% set currentItem = cnerta_breadcrumb_get('MyWonderfullBundle:Builder:Menu') %}
    {# some crazy stuff #}
    {% for item in currentItem %}
        {% if loop.index != 1 %}
            {% if loop.index > 1 %} > {% endif %}
            {% if not loop.last %}<a href="{{ item.uri }}">{{ item.label }}</a>
            {% else %}<span>{{ item.label }}</span>{% endif %}
        {% endif %}
    {% endfor %}

If you want to use your own template for rendering :

    {{ cnerta_breadcrumb_render('MyWonderfullBundle:Builder:Menu', {'template': 'MyWonderfullBundle:Breadcrumb:myBreadcrumb.html.twig'}) }}

Unit test the Bundle

Before running phpunit you must load dependencies. This will only load the required vendors needed for run test.

     composer install --dev

After that you can run phpunit.

      ./vendor/bin/phpunit -c phpunit.xml.dist

Changelog

Version 2.1.0 (2015/10/19)

  • #4 Remove an unnecessary function who remove a node labeled "root"

About

The CnertaBreadcrumbBundle, for Symfony2, provide an easy way to create a breadcrumb with KnpMenuBundle

Resources

Stars

Watchers

Forks

Packages

No packages published