所谓的开发新菜单,其实是和开发模块相对比的,之前说的开发模块,是在应对较大的,或者较为复杂,又相对独立于其他功能的项目需求。

而开发菜单,就是简单的在后台增加一个一级菜单以及其子菜单,或者直接在现有的一级菜单下增加新的二级菜单,至于功能的实现,肯定是要在项目目录下的app以及admin/app目录下写控制器来实现了。

1.打开admin/includes/menu.inc.php

这里存放的就是菜单

大概50行的地方会有一个  //设置

在上面添加测试菜单,test_1,test_2,如上图所示的添加方法就是直接添加一个新的以及菜单和二级菜单,如果只添加一个test_2,把它放到 设置里的children里面,那它就是设置的二级菜单了。

2.设置语言包

后台有自己的语言包,也可以设置在公共语言包里。我设置在了language/sc-utf-8/admin目录下的default.lang.php

添加了上面对应的

'test_1'=>'挂件的一级菜单',
'test_2'=>'挂件的二级菜单',

3.后台控制器:

打开admin/app目录,这里放的都是后台控制器,新建一个guajian.app.php

<?php
/**
*
*/
class GuajianApp extends BackendApp { function __construct()
{
$this->show();
} function show(){
parent::__construct();
$this->test=&m("test");
} function index(){
$res=$this->test->find();
// var_dump($res);exit; $this->assign('res',$res); $this->display('guajian.index.html');
} } ?>

还是模块发开一样,test数据表之前创建好了。引入的模版是guajian.index.html 那么在admin/templates目录下新建模版guajian.index.php

输出由控制器传过来的$res,代码如下:

<!--{foreach from=$res item=v}-->
{$v.name}-----{$v.money}
<!--{/foreach} -->

这个时候再访问本地后台,就可以看到新的菜单以及对应的子菜单了出来了

剩下的就是根据项目需求开发了。

ecmall 后台添加新菜单的更多相关文章

  1. ecshop 后台添加新菜单 以及 权限控制

    首先 在languages\zh_cn\admin\common.php 中添加 一级菜单 二级菜单 其次 在admin\includes\inc_menu.php 中添加 然后 在admin\inc ...

  2. Ecshop:后台添加新功能栏目以及管理权限设置

    一.添加菜单项 打开 /admin/includes/inc_menu.php文件(后台框架左边菜单),在最后添加一行如下: $modules['17_other_menu']['sns_list'] ...

  3. DEDE后台添加新变量出现:Request var not allow!的解决办法 相关案例演

    论坛上很多人都反馈说在后台添加新变量的时候会出现 "Request var not allow!" 的BUG错误,本文主要就是介绍如何去解决这个问题!下面看具体操纵:在DEDE根目 ...

  4. dedecms后台添加新变量和删除变量的方法

    下面由做网站为大家来介绍dedecms后台添加新变量和删除变量的方法 添加新变量是做什么用的?答:可以在模板内调用的东东. 一.进入网站织梦(Dedecms)后台(以dede5.5为例),依次打开系统 ...

  5. Ecshop :后台添加新功能 菜单及 管理权限 配置

    需求:在<商品管理>下增加一项[商品推广管理]功能 一. 添加菜单项 打开 /admin/includes/inc_menu.php 文件(后台框架左边菜单),在最后添加一行如下: $mo ...

  6. ecshop 后台添加新的设置

    1.ecs_shop_config 表添加新的值. 2.language/zh_cn/admin/shop_config.php 设置字段后台字段名和提示信息($_LANG['cfg_name'][' ...

  7. hexo添加新菜单并实现新菜单的文章归类

    1.添加收藏夹菜单,新建一个页面,命名为 favorite,命令如下: hexo new page favorite ## 然后就可以看到在source下多了一个favorite的文件夹,里面有一个i ...

  8. WordPress后台添加侧边栏菜单

    add_action('admin_menu', 'register_custom_menu_page'); function register_custom_menu_page() { add_me ...

  9. [ecmall]Ecmall 后台添加模板编辑区

    例如,想把品牌/index.php?app=brand页面做成可编辑的. 首先,找到后台admin\includes\menu.inc.php第61行 'template' => array( ...

随机推荐

  1. javascript监听按键

    document.addEventListener('keydown',test); function test(e){ var x=e.keyCode; if(x == 49){ console.l ...

  2. bool的值分别为0,1;那哪个代表true哪个代表false?

    0为false,1为true. bool表示布尔型变量,也就是逻辑型变量的定义符,以英国数学家.布尔代数的奠基人乔治·布尔(George Boole)命名. 布尔型变量bool的取值只有false和t ...

  3. Java同步锁——lock与synchronized 的区别【转】

    在网上看来很多关于同步锁的博文,记录下来方便以后阅读 一.Lock和synchronized有以下几点不同: 1)Lock是一个接口,而synchronized是Java中的关键字,synchroni ...

  4. Android studio新建文件出现setContentView(R.layout.activity_main);中的R标红错误解决方法

    今天打开Android studio突然出现了setContentView(R.layout.activity_main);中的R标红错误,这已经不是第一次出现这个错误了,真心的觉得Android s ...

  5. Machine Learning--week4 神经网络的基本概念

    之前的学习成果并不能解决复杂的非线性问题 Neural Networks Sigmoid(logistic) activation function: activation function is a ...

  6. css技巧小计

    今天又学到两招,一招是把大框写相对定位,然后小框写绝对定位,运用top和left,想去哪里去哪里 另一招是边框渐变色,微信小程序,边框写渐变我没成功,然后大佬支招写一个大框,相对定位,然后设背景渐变色 ...

  7. get函数

    dict={"name":"jary","age":22}print(dict.get("age")) # 通过键值找到 ...

  8. nova相关操作的Request_Id的获取

    在分析nova的众多log文件时,如nova-api,nova-scheduler,nova-compute等,其中的request id是串联起整个flow的关键词. 而通过nova instanc ...

  9. 下载并配置jdk

    ①下载jdk安装到本机,这里是jdk8下载地址,请根据自己机子的环境进行下载 https://www.oracle.com/technetwork/java/javase/downloads/jdk8 ...

  10. Rails6.0 Beta版本1: Action Text的简单使用

    主要功能是新增2个主要的框架Mailbox和action Text. 和2个重要的可扩展的升级: multiple databases support和parallel testing. Action ...