Class kartik\widgets\SideNav
A custom extended side navigation menu extending Yii Menu
For example:
echo SideNav::widget([
'items' => [
[
'url' => ['/site/index'],
'label' => 'Home',
'icon' => 'home'
],
[
'url' => ['/site/about'],
'label' => 'About',
'icon' => 'info-sign',
'items' => [
['url' => '#', 'label' => 'Item 1'],
['url' => '#', 'label' => 'Item 2'],
],
],
],
]);
Public Properties
Property | Type | Description | Defined By |
---|---|---|---|
$activateItems | boolean | Whether to automatically activate items according to whether their route setting matches the currently requested route. | yii\widgets\Menu |
$activateParents | boolean | Whether to activate parent menu items when one of the corresponding child menu items is active. | yii\widgets\Menu |
$activeCssClass | string | The CSS class to be appended to the active menu item. | yii\widgets\Menu |
$addlCssClass | string | Additional CSS class to be appended to each navigation item link. | kartik\sidenav\SideNav |
$autoIdPrefix | string | The prefix to the automatically generated widget IDs. | yii\base\Widget |
$behaviors | yii\base\Behavior[] | List of behaviors attached to this component. | yii\base\Component |
$bsColCssPrefixes | array | The bootstrap grid column css prefixes mapping, the key is the bootstrap versions, and the value is an array containing the sizes and their corresponding grid column css prefixes. | kartik\base\BootstrapTrait |
$bsCssMap | array | CSS conversion mappings across bootstrap library versions. | kartik\base\BootstrapTrait |
$bsExtBasename | integer | The yii2 bootstrap extension base name (readonly property available via getter method getBsExtBasename()) | kartik\base\BootstrapTrait |
$bsVer | integer | Bootstrap version number currently set (readonly property available via getter method getBsVer()) | kartik\base\BootstrapTrait |
$bsVersion | integer|string | The bootstrap library version that you wish to use for this specific extension / widget. | kartik\base\BootstrapTrait |
$containerOptions | array | Options for the sidenav container | kartik\sidenav\SideNav |
$counter | integer | A counter used to generate $id for widgets. | yii\base\Widget |
$defaultBtnCss | string | Default bootstrap button CSS (readonly property available via getter method getDefaultBtnCss()) | kartik\base\BootstrapTrait |
$defaultIconPrefix | string | Default icon prefix (readonly property available via getter method getDefaultIconPrefix()) | kartik\base\BootstrapTrait |
$dropdownClass | string | Bootstrap dropdown class name based on currently configured bootstrap version (readonly property available via getter method getDropdownClass()) | kartik\base\BootstrapTrait |
$encodeLabels | boolean | Whether the labels for menu items should be HTML-encoded. | yii\widgets\Menu |
$firstItemCssClass | string|null | The CSS class that will be assigned to the first item in the main menu or each submenu. | yii\widgets\Menu |
$heading | array | String/boolean the sidenav heading. | kartik\sidenav\SideNav |
$headingOptions | array | Options for the sidenav heading | kartik\sidenav\SideNav |
$hideEmptyItems | boolean | Whether to hide empty menu items. | yii\widgets\Menu |
$iconPrefix | string | Prefix for the icon in $items. | kartik\sidenav\SideNav |
$id | string|null | ID of the widget. Note that the type of this property differs in getter and setter. See getId() and setId() for details. | yii\base\Widget |
$indItem | string | Indicator for a menu sub-item | kartik\sidenav\SideNav |
$indMenuClose | string | Indicator for a closed sub-menu | kartik\sidenav\SideNav |
$indMenuOpen | string | Indicator for a opened sub-menu | kartik\sidenav\SideNav |
$itemOptions | array | List of HTML attributes shared by all menu $items. | yii\widgets\Menu |
$items | array | List of sidenav menu items. | kartik\sidenav\SideNav |
$labelTemplate | string | The template used to render the body of a menu which is NOT a link. | yii\widgets\Menu |
$lastItemCssClass | string|null | The CSS class that will be assigned to the last item in the main menu or each submenu. | yii\widgets\Menu |
$linkTemplate | string | The template used to render the body of a menu which is a link. | yii\widgets\Menu |
$options | array | The HTML attributes for the menu's container tag. | yii\widgets\Menu |
$params | array|null | The parameters used to determine if a menu item is active or not. | yii\widgets\Menu |
$route | string|null | The route used to determine if a menu item is active or not. | yii\widgets\Menu |
$stack | yii\base\Widget[] | The widgets that are currently being rendered (not ended). | yii\base\Widget |
$submenuTemplate | string | The template used to render a list of sub-menus. | yii\widgets\Menu |
$type | string | The menu container style. | kartik\sidenav\SideNav |
$view | yii\web\View | The view object that can be used to render views or view files. Note that the type of this property differs in getter and setter. See getView() and setView() for details. | yii\base\Widget |
$viewPath | string | The directory containing the view files for this widget. | yii\base\Widget |
Protected Properties
Property | Type | Description | Defined By |
---|---|---|---|
$_bsVer | integer | Current bootstrap version number | kartik\base\BootstrapTrait |
$_defaultBtnCss | string | Default bootstrap button CSS | kartik\base\BootstrapTrait |
$_defaultIconPrefix | string | Default icon CSS prefix | kartik\base\BootstrapTrait |
$_isBs4 | boolean | Flag to detect whether bootstrap 4. | kartik\base\BootstrapTrait |
Public Methods
Method | Description | Defined By |
---|---|---|
__call() | Calls the named method which is not a class method. | yii\base\Component |
__clone() | This method is called after the object is created by cloning an existing one. | yii\base\Component |
__construct() | Constructor. | yii\base\BaseObject |
__get() | Returns the value of a component property. | yii\base\Component |
__isset() | Checks if a property is set, i.e. defined and not null. | yii\base\Component |
__set() | Sets the value of a component property. | yii\base\Component |
__unset() | Sets a component property to be null. | yii\base\Component |
addCssClass() | Adds bootstrap CSS class to options by parsing the bootstrap version for the specified Bootstrap CSS type. | kartik\base\BootstrapTrait |
afterRun() | This method is invoked right after a widget is executed. | yii\base\Widget |
attachBehavior() | Attaches a behavior to this component. | yii\base\Component |
attachBehaviors() | Attaches a list of behaviors to the component. | yii\base\Component |
beforeRun() | This method is invoked right before the widget is executed. | yii\base\Widget |
begin() | Begins a widget. | yii\base\Widget |
behaviors() | Returns a list of behaviors that this component should behave as. | yii\base\Component |
canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\Component |
canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\Component |
className() | Returns the fully qualified name of this class. | yii\base\BaseObject |
detachBehavior() | Detaches a behavior from the component. | yii\base\Component |
detachBehaviors() | Detaches all behaviors from the component. | yii\base\Component |
end() | Ends a widget. | yii\base\Widget |
ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. | yii\base\Component |
getBSClass() | Gets the respective Bootstrap class based on currently configured bootstrap version. | kartik\base\BootstrapTrait |
getBehavior() | Returns the named behavior object. | yii\base\Component |
getBehaviors() | Returns all behaviors attached to this component. | yii\base\Component |
getBsVer() | Gets the current set bootstrap version number. | kartik\base\BootstrapTrait |
getCssClass() | Gets bootstrap css class by parsing the bootstrap version for the specified BS CSS type. | kartik\base\BootstrapTrait |
getDefaultBtnCss() | Gets the default button CSS | kartik\base\BootstrapTrait |
getDefaultIconPrefix() | Gets the default icon css prefix | kartik\base\BootstrapTrait |
getDropdownClass() | Gets the respective bootstrap dropdown class name based on currently configured bootstrap version. | kartik\base\BootstrapTrait |
getId() | Returns the ID of the widget. | yii\base\Widget |
getView() | Returns the view object that can be used to render views or view files. | yii\base\Widget |
getViewPath() | Returns the directory containing the view files for this widget. | yii\base\Widget |
hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. | yii\base\Component |
hasMethod() | Returns a value indicating whether a method is defined. | yii\base\Component |
hasProperty() | Returns a value indicating whether a property is defined for this component. | yii\base\Component |
init() | kartik\sidenav\SideNav | |
isBs() | Validate Bootstrap version | kartik\base\BootstrapTrait |
isBs4() | Validate if Bootstrap 4.x version. | kartik\base\BootstrapTrait |
off() | Detaches an existing event handler from this component. | yii\base\Component |
on() | Attaches an event handler to an event. | yii\base\Component |
removeCssClass() | Removes bootstrap CSS class from options by parsing the bootstrap version for the specified Bootstrap CSS type. | kartik\base\BootstrapTrait |
render() | Renders a view. | yii\base\Widget |
renderFile() | Renders a view file. | yii\base\Widget |
run() | Renders the side navigation menu. | kartik\sidenav\SideNav |
setId() | Sets the ID of the widget. | yii\base\Widget |
setView() | Sets the view object to be used by this widget. | yii\base\Widget |
trigger() | Triggers an event. | yii\base\Component |
widget() | Creates a widget instance and runs it. | yii\base\Widget |
Protected Methods
Method | Description | Defined By |
---|---|---|
configureBsVersion() | Configures the bootstrap version settings | kartik\base\BootstrapTrait |
getBsExtBasename() | The yii2-bootstrap extension base name. | kartik\base\BootstrapTrait |
initBsVersion() | Initializes bootstrap versions for the widgets and asset bundles. | kartik\base\BootstrapTrait |
isItemActive() | Checks whether a menu item is active. | yii\widgets\Menu |
isSameVersion() | Compares two versions and checks if they are of the same major BS version. | kartik\base\BootstrapTrait |
markTopItems() | Marks each topmost level item which is not a submenu | kartik\sidenav\SideNav |
normalizeItems() | Normalizes the $items property to remove invisible items and activate certain items. | yii\widgets\Menu |
parseVer() | Parses and returns the major BS version | kartik\base\BootstrapTrait |
renderItem() | Renders the content of a side navigation menu item. | kartik\sidenav\SideNav |
renderItems() | Recursively renders the menu items (without the container tag). | yii\widgets\Menu |
renderMenu() | Renders the main menu | kartik\sidenav\SideNav |
setCssClass() | Appends or inserts a CSS class to a HTML tag markup | kartik\sidenav\SideNav |
validateItems() | Validates each item for a valid label and url. | kartik\sidenav\SideNav |
Events
Event | Type | Description | Defined By |
---|---|---|---|
EVENT_AFTER_RUN | yii\base\WidgetEvent | An event raised right after executing a widget. (available since version 2.0.11) | yii\base\Widget |
EVENT_BEFORE_RUN | yii\base\WidgetEvent | An event raised right before executing a widget. (available since version 2.0.11) | yii\base\Widget |
EVENT_INIT | yii\base\Event | An event that is triggered when the widget is initialized via init(). (available since version 2.0.11) | yii\base\Widget |
Constants
Constant | Value | Description | Defined By |
---|---|---|---|
TYPE_ACTIVE | 'active' | kartik\sidenav\SideNav | |
TYPE_DANGER | 'danger' | kartik\sidenav\SideNav | |
TYPE_DEFAULT | 'default' | kartik\sidenav\SideNav | |
TYPE_INFO | 'info' | kartik\sidenav\SideNav | |
TYPE_PRIMARY | 'primary' | kartik\sidenav\SideNav | |
TYPE_SECONDARY | 'secondary' | kartik\sidenav\SideNav | |
TYPE_SUCCESS | 'success' | kartik\sidenav\SideNav | |
TYPE_WARNING | 'warning' | kartik\sidenav\SideNav |