info@a-coding-project.de

Menüauflistung im Dashboard (CMS)

Derzeit bekommen wir ja die Seiten und Dateien im Dashboard des neuen Backends aufgelistet. Heute kommen über das neue Plugin menulistwidget die Menüs dazu.

Da die Menüs derzeit noch gar keine Hierarchie unterstützen müssen wir in der cms_menu_names die Spalte dir hinzufügen.

Dann muss das Plugin über die cms_activated_plugins aktiviert werden. In der cms_dashboard wir das dann in Spalte 3 Zeile 2 eingefügt.

Hier exemplarisch der Code für die neue /system/menulistwidget/menulistwidget.php:

<?PHP
  classMenuListWidget extends WidgetBase{
    public function load(){
      $this->headline = "Menüs";
      if(!isset($_GET['dir'])) $_GET['dir'] = "";
      $template = new Template();
      $template->load("plugin_menulistwidget_menulist");
      $template->assign_var("NEWMENUURL","/admin/index.php?page=menue-new");
      $menus =sys::getMenues($_GET['dir']);
      foreach($menus as $menu){
        $index = $template->add_loop_item("MENUS");
	    $template->assign_loop_var("MENUS", $index, "ID", $menu->id);
	    $template->assign_loop_var("MENUS", $index, "TITLE", $menu->name);
	    $template->assign_loop_var("MENUS", $index, "PAGES", $menu->count);
	    $template->assign_loop_var("MENUS", $index, "EDITURL", "index.php?page=menu-edit&menu=".$menu->id);
	    $template->assign_loop_var("MENUS", $index, "DELETEURL", "index.php?page=menu-delete&menu=".$menu->id);
      }
      if(!$menus){
        $template->assign_var("NOMENUS","Es sind keine Menüs vorhanden.");
      }
      else{
        $template->assign_var("NOMENUS","");
      }
      $this->content = $template->getCode();
    }
  }
?>

Die weiteren Änderungen stehen im r5 und r7.

Über uns

Stefan Wienströer

Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project

Auch interessant