Extends Symfony2 with an extra route based configuration for context, breadcrumb, menu and more.

dev-master 2013-03-07 15:04 UTC

This package is not auto-updated.

Last update: 2020-03-20 15:48:56 UTC


The BDevRoutingExtraBundle is a easy way to add information about routes to your Symfony2 application. This for example can avoid having to override a title block in each template within your application by using {{ route_extra('title') }}. You can also use it to generate a breadcrumb using '{{ route_breadcrumb() }}' or add an item to a menu.

Build Status


Step 1) Get the bundle


"require" :  {
    // ...

Step 2) Register the bundle

// app/AppKernel.php

public function registerBundles()
    $bundles = array(
        // ...
        new BDev\Bundle\RoutingExtraBundle\BDevRoutingExtraBundle(),
    // ...

Step 2) Configure the bundle

# app/config/config.yml
    resource: %kernel.root_dir%/config/routing.ext.yml #
    twig: true # use "twig: false" to disable the Twig extension
    breadcrumb: # enable the breadcrumb twig extension (for this twig must be enabled)
        label_attr: [breadcrumb, title] # This a a array that references to the options set per route
    knp_menu: # set knp menu bundle extension
      menus: # define the menu's and there specific options
            class: 'mymain_menu'
# app/config/routing.ext.yml
myBundle: # import route extra's
    resource: "@MyBundle/Resources/config/routing.ext.yml"

home: # the route name and it's options
  title: Home
  summary: Welcome home
  menu: # add the route to a menu
        class: home
    footer: ~

  parent: home # the parent route name
  title: Profile
  summary: Your information
    footer: ~


  • Improve usage documentation
  • Use context configuration to only cache what is needed
  • Add i18n support
  • Add a way to order KnpMenu items
  • Add unit tests for KnpMenu code
  • Improve Breadcrumb by using a library or extend current code to support multiple renders?
  • Move KnpMenu code to a separate bundle?
  • Add security extension?