ecmall 后台添加新菜单
所谓的开发新菜单,其实是和开发模块相对比的,之前说的开发模块,是在应对较大的,或者较为复杂,又相对独立于其他功能的项目需求。
而开发菜单,就是简单的在后台增加一个一级菜单以及其子菜单,或者直接在现有的一级菜单下增加新的二级菜单,至于功能的实现,肯定是要在项目目录下的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 后台添加新菜单的更多相关文章
- ecshop 后台添加新菜单 以及 权限控制
首先 在languages\zh_cn\admin\common.php 中添加 一级菜单 二级菜单 其次 在admin\includes\inc_menu.php 中添加 然后 在admin\inc ...
- Ecshop:后台添加新功能栏目以及管理权限设置
一.添加菜单项 打开 /admin/includes/inc_menu.php文件(后台框架左边菜单),在最后添加一行如下: $modules['17_other_menu']['sns_list'] ...
- DEDE后台添加新变量出现:Request var not allow!的解决办法 相关案例演
论坛上很多人都反馈说在后台添加新变量的时候会出现 "Request var not allow!" 的BUG错误,本文主要就是介绍如何去解决这个问题!下面看具体操纵:在DEDE根目 ...
- dedecms后台添加新变量和删除变量的方法
下面由做网站为大家来介绍dedecms后台添加新变量和删除变量的方法 添加新变量是做什么用的?答:可以在模板内调用的东东. 一.进入网站织梦(Dedecms)后台(以dede5.5为例),依次打开系统 ...
- Ecshop :后台添加新功能 菜单及 管理权限 配置
需求:在<商品管理>下增加一项[商品推广管理]功能 一. 添加菜单项 打开 /admin/includes/inc_menu.php 文件(后台框架左边菜单),在最后添加一行如下: $mo ...
- ecshop 后台添加新的设置
1.ecs_shop_config 表添加新的值. 2.language/zh_cn/admin/shop_config.php 设置字段后台字段名和提示信息($_LANG['cfg_name'][' ...
- hexo添加新菜单并实现新菜单的文章归类
1.添加收藏夹菜单,新建一个页面,命名为 favorite,命令如下: hexo new page favorite ## 然后就可以看到在source下多了一个favorite的文件夹,里面有一个i ...
- WordPress后台添加侧边栏菜单
add_action('admin_menu', 'register_custom_menu_page'); function register_custom_menu_page() { add_me ...
- [ecmall]Ecmall 后台添加模板编辑区
例如,想把品牌/index.php?app=brand页面做成可编辑的. 首先,找到后台admin\includes\menu.inc.php第61行 'template' => array( ...
随机推荐
- javascript监听按键
document.addEventListener('keydown',test); function test(e){ var x=e.keyCode; if(x == 49){ console.l ...
- bool的值分别为0,1;那哪个代表true哪个代表false?
0为false,1为true. bool表示布尔型变量,也就是逻辑型变量的定义符,以英国数学家.布尔代数的奠基人乔治·布尔(George Boole)命名. 布尔型变量bool的取值只有false和t ...
- Java同步锁——lock与synchronized 的区别【转】
在网上看来很多关于同步锁的博文,记录下来方便以后阅读 一.Lock和synchronized有以下几点不同: 1)Lock是一个接口,而synchronized是Java中的关键字,synchroni ...
- Android studio新建文件出现setContentView(R.layout.activity_main);中的R标红错误解决方法
今天打开Android studio突然出现了setContentView(R.layout.activity_main);中的R标红错误,这已经不是第一次出现这个错误了,真心的觉得Android s ...
- Machine Learning--week4 神经网络的基本概念
之前的学习成果并不能解决复杂的非线性问题 Neural Networks Sigmoid(logistic) activation function: activation function is a ...
- css技巧小计
今天又学到两招,一招是把大框写相对定位,然后小框写绝对定位,运用top和left,想去哪里去哪里 另一招是边框渐变色,微信小程序,边框写渐变我没成功,然后大佬支招写一个大框,相对定位,然后设背景渐变色 ...
- get函数
dict={"name":"jary","age":22}print(dict.get("age")) # 通过键值找到 ...
- nova相关操作的Request_Id的获取
在分析nova的众多log文件时,如nova-api,nova-scheduler,nova-compute等,其中的request id是串联起整个flow的关键词. 而通过nova instanc ...
- 下载并配置jdk
①下载jdk安装到本机,这里是jdk8下载地址,请根据自己机子的环境进行下载 https://www.oracle.com/technetwork/java/javase/downloads/jdk8 ...
- Rails6.0 Beta版本1: Action Text的简单使用
主要功能是新增2个主要的框架Mailbox和action Text. 和2个重要的可扩展的升级: multiple databases support和parallel testing. Action ...