0

我只想在 yii2 高级模板前端显示来自数据库的菜单。我也有静态菜单。我正在使用菜单小部件

这是我的代码

           <?php
              echo Menu::widget([
                'options' => ['class' => 'about_content'],
                'items' => CMS::getCMSPages(),
              ]);
            ?>

这里 CMS::getCMSPages() 将从数据库中获取菜单。而且我还有静态菜单。所以我像这样添加到菜单小部件中

           <?php
              echo Menu::widget([
                'options' => ['class' => 'about_content'],
                'items' => [[CMS::getCMSPages()],
                     ['label' => 'contact', 'url' => ['site/index']]
                 ]

              ]);
            ?>

但这不起作用。有人帮帮我,伙计们

4

1 回答 1

1

CMS::getCMSPages()方法应该返回正确准备的项目数组。像这样的东西:

[
    ['label' => 'Home', 'url' => ['site/index']],
    ['label' => 'Products', 'url' => ['product/index'],
]

您还应该合并项目数组:

<?php
  echo Menu::widget([
    'options' => ['class' => 'about_content'],
    'items' => array_merge(CMS::getCMSPages(), [['label' => 'contact', 'url' => ['site/index']]])
  ]);
?>
于 2015-08-18T11:47:01.610 回答