dev-master
9999999-devThis bundle provides a menu bundle for symfony2
MIT
The Requires
by Fernando SĂĄnchez MartĂnez
This bundle provides a menu bundle for symfony2
The MenuBundle
means easy-to-implement and feature-rich menus in your Symfony application!, (*1)
Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:, (*2)
$ composer require madforwebs/menu-bundle
This command requires you to have Composer installed globally, as explained
in the installation chapter
of the Composer documentation., (*3)
Then, enable the bundle by adding the following line in the app/AppKernel.php
file of your project:, (*4)
// app/AppKernel.php // ... class AppKernel extends Kernel { public function registerBundles() { $bundles = array( // ... new Knp\Bundle\MadForWebs\MenuBundle(), ); // ... } // ... }
An example builder class would look like this:, (*5)
<?php namespace AdminBundle\Menu; use MadForWebs\MenuBundle\Menu\MenuInterface; class MainMenu implements MenuInterface { public function getMenu() { return [ 'class' => 'sidebar-menu', 'items' => [ [ 'name' => 'Users', 'icon' => 'fa fa-user', 'items' => [ [ 'name' => 'Admins', 'route' => 'admin_core_user_admin_list', 'active' => [ 'admin_core_user_admin_[\w]+', ], ], [ 'name' => 'Clients', 'route' => 'admin_core_user_client_list', 'active' => [ 'admin_core_user_client_[\w]+', ], ], ], ], [ 'name' => 'Groups', 'route' => 'admin_core_group_list', 'icon' => 'fa fa-users', 'active' => [ 'admin_core_group_[\w]+', '_admin.group.[\w\.]', ], ], ], ]; } }
To actually render the menu, just do the following from anywhere in any template:, (*6)
```html+jinja {{ renderMenu('TeacherBundle\Menu\MainMenu','sidebar') }}, (*7)
If you are defined your menu as a service, you can render as follow: ```html+jinja {{ renderMenu('my.menu.service.name','sidebar') }}
This bundle provides a menu bundle for symfony2
MIT