yii\widgets\Menu::renderItem PHP Method

renderItem() protected method

Note that the container and the sub-menus are not rendered here.
protected renderItem ( array $item ) : string
$item array the menu item to be rendered. Please refer to [[items]] to see what data might be in the item.
return string the rendering result
    protected function renderItem($item)
    {
        if (isset($item['url'])) {
            $template = ArrayHelper::getValue($item, 'template', $this->linkTemplate);
            return strtr($template, ['{url}' => Html::encode(Url::to($item['url'])), '{label}' => $item['label']]);
        } else {
            $template = ArrayHelper::getValue($item, 'template', $this->labelTemplate);
            return strtr($template, ['{label}' => $item['label']]);
        }
    }

Usage Example

Beispiel #1
0
 /**
  * @inheritdoc
  */
 protected function renderItem($item)
 {
     $renderedItem = parent::renderItem($item);
     if (isset($item['badge'])) {
         $badgeOptions = ArrayHelper::getValue($item, 'badgeOptions', []);
         Html::addCssClass($badgeOptions, 'label pull-right');
     } else {
         $badgeOptions = null;
     }
     return strtr($renderedItem, ['{icon}' => isset($item['icon']) ? new Icon($item['icon'], ArrayHelper::getValue($item, 'iconOptions', [])) : '', '{badge}' => (isset($item['badge']) ? Html::tag('small', $item['badge'], $badgeOptions) : '') . (isset($item['items']) && count($item['items']) > 0 ? new Icon('fa fa-angle-left pull-right') : '')]);
 }
All Usage Examples Of yii\widgets\Menu::renderItem