dedecms为后台自定义菜单的完整方法

品味人生 dedeCMS 围观7330次 18 条评论 编辑日期:2014-06-14 字体:  

 

最近在给客户定制一个企业网站,客户要求使用dedecms作为管理后台。

由于客户提出了许多定制功能,因此会用到dedecms较多的内置功能来实现。

可是dedemcs的功能都相对分散,如果交付到用户手中,难免会使用户难以学习与使用。

因此,这里就需要我们在后台为客户定制一个快捷类型的菜单,将分散在各个模块中的功能整理到一起,使用户能够易学易用。

首先,我们需要找到dedecms后台菜单的模板文件,路径为/dede/templets/index_menu2.htm

打开文件后,首先我们需要找到

<a id='link1' class='mmac'>

<div onClick="ShowMainMenu(1)">核心</div>

</a>

这是dede默认的第一个菜单。

然后在这穿代码前面插入我们自己的菜单标签,

<a id='link9' class='mmac'>

<div onClick="ShowMainMenu(9)">快捷</div>

</a>

这里说明一下,id=link9 这里的数字9 是指为这个菜单设定一个ID,这个ID不要与已有的菜单ID重复,具体想设定为多少可以随意。 class="mmac" 代表默认显示为选中状态的样式,如果想将自定义菜单设置为默认显示的菜单,可以把class改为mmac,将其他mmac的菜单状态改为mm

菜单的标签按钮设置完成之后,我们需要再给菜单设立一个占位容器,找到代码

<div id=’ct100′></div>

在它的上面插入我们自己的容器代码,即<div id=’ct9′></div> ,请注意,这里的ct9 中的数字9是与之前标签ID一一对应的。

找到代码: if(!empty($openitem) && $openitem!=1)

修改为: if(!empty($openitem) && $openitem!=9)

继续,找到代码: ShowMainMenu(100);

修改为: ShowMainMenu(9);

注意,这里的9也是与上面的ID对应的。

到这里,菜单模板的设置已经完成,保存并上传文档。

接着我们需要在dede的程序对象中,注册我们需要的菜单。打开/dede/inc/inc_menu.php

在代码的最下面,我们可以看到有很长一排“—————”,在这些符号的前面插入我们的菜单代码,如下:

<m:top item='9_' name='推送代码管理' display='none'>
<m:item name='英文-幻灯片' link='ad_edit.php?aid=21&dopost=edit' rank='' target='main' />
</m:top>

这里对代码做一些简单的说明,标签<m:top>代表菜单的大分类,<m:item>代表菜单的子项目。

上述代码中,<m:top>标签中的 item=9_ 中的数字9也需要和之前设置的ID对应。 name为菜单分类的标题名字。

<m:item>中的link为你需要跳转的链接, rank直接留空即可,target有两种参数,main代表页面在右侧的iframe窗体中打开,如果使用_blank则会打开一个新的窗口,一般可以用于跳转到用户的网站上,或者QQ在线之类的。

dedecms为后台自定义菜单的完整方法的更多相关文章

  1. [wordpress]后台自定义菜单字段和使用wordpress color picker

    Wordpress Version 4.4.2 参考链接 插件使用wordpress color picker:Add A New Color Picker To WordPress 后台菜单自定义字 ...

  2. dedecms织梦二级菜单的实现方法

    首先,复制代码: 程序代码 {dede:channelartlist typeid='top' cacheid='channelsonlist'} {dede:channel type='son' n ...

  3. 使用Java语言开发微信公众平台(八)——自定义菜单功能

    随着上一篇文章的结束,我们已经实现了所有消息的类型的回复功能.今天,我们来学习更加高大上,也更加重要的自定义菜单功能. 一.了解自定义菜单 自定义菜单是微信公众平台最常用也是最重要的功能之一.根据微信 ...

  4. wordpress 自定义删除后台管理菜单

    <?php /* //wordpress共有5种角色:administrator(管理员) editor(编辑) author(作者) contributor(投稿者) subscriber(订 ...

  5. 微信自定义菜单说php json_encode不转义中文汉字的方法

    http://blog.csdn.net/qmhball/article/details/45690017 最近在开发微信自定义菜单. 接口比较简单,就是按微信要求的格式post一段json数据过去就 ...

  6. dedecms后台左侧菜单500错误怎么处理

    前面dedecms后台左侧菜单空白不显示怎么处理,但有些网友还是反应说不能显示,提示500错误,这可能是iis配置或apache设置不正确有关,一般是正常的.但是,既然问题出现了,我们还是要去解决.下 ...

  7. ASP.NET MVC5+EF6+EasyUI 后台管理系统(74)-微信公众平台开发-自定义菜单

    系列目录 引言 1.如果不借用Senparc.Weixin SDK自定义菜单,编码起来,工作量是非常之大 2.但是借助SDK似乎一切都是简单得不要不要的 3.自定义菜单无需要建立数据库表 4.自定义菜 ...

  8. 微信利用PHP创建自定义菜单的方法

    在使用通用接口前,你需要做以下两步工作:1.拥有一个微信公众账号,并获取到appid和appsecret(在公众平台申请内测资格,审核通过后可获得)2.通过获取凭证接口获取到access_token注 ...

  9. 通过微信公众号API复制公众号自定义菜单同时增加子菜单方法

    主要的原因是再不破坏公众号以前的菜单的基础上增加自定义菜单,主要步骤如下: 1.通过微信提供的微信公众平台接口调试工具获取公众号的所有自定义菜单 网址:https://mp.weixin.qq.com ...

随机推荐

  1. String和StringBuffer、StringBuilder的区别

    目录: 1.String类的不可变性 2.用String的时候需要注意什么 3.String与StringBuilder的区别 4.StringBuilder和StringBuffer的区别 Stri ...

  2. C学习笔记(八)字符输入输出和输入确认

    缓冲区 缓冲区分为两类:完全缓冲(fully buffered)I/O和行缓冲(line-buffered)I/O.完全缓冲在缓冲区满时被清空(内容被发送至目的地).这种类型常出现在文件输入中.缓冲区 ...

  3. 手动实现WCF[转]

    由于应用程序开发中一般都会涉及到大量的增删改查业务,所以这个程序将简单演示如何在wcf中构建简单的增删改查服务.我们知道WCF是一组通讯服务框架,我将解决方案按大范围划分为服务端,客户端通过服务寄宿程 ...

  4. iOS开发数据库篇—FMDB简单介绍

    iOS开发数据库篇—FMDB简单介绍 一.简单说明 1.什么是FMDB FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API 2.FMDB的优点 使用起来 ...

  5. iOS开发UI篇—popoverController简单介绍

    iOS开发UI篇—popoverController简单介绍 一.简单介绍 1.什么是UIPopoverController 是iPad开发中常见的一种控制器(在iPhone上不允许使用) 跟其他控制 ...

  6. Top Five Hacker Tools Every CISO Should Understand

    As the role of the CISO continues to evolve within organizations towards that of an executive level ...

  7. ES6 基础版迭代器

    ES6中引入了generator function* get() { var result1 = yield c; var result2 = yield b; var result3 = yield ...

  8. ubuntu 14.04 下找不到命令,路径出错

    在安装一些东西时,可能操作上不小心把路径覆盖或打错,造成一些基本命令如ls mkdir等无法使用,就会出现以下提示错误. 错误: 由于/usr/bin 不在PATH 环境变量中,故无法找到该命令 根本 ...

  9. <li>高度自适应

    使用ul和li代替表格进行排版的时候,会发现li无法自适应高度. 只需要将li的overflow置为auto就可以了,因为li默认的overflow是visible,会将内部元素显示在li之外.   ...

  10. 关于oracle的rowid

    oracle数据库中表的每一行(元组)均有一个rowid,它是数据的详细地址,通过rowid,oracle可以快速的定位某行具体的数据的位置. ROWID可以分为物理rowid和逻辑rowid两种.普 ...