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. std::vector介绍

    vector是C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库.vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vec ...

  2. unity3d Light Probe Group图解超详细使用方法

    原创文章如需转载请注明:转载自http://blog.csdn.net/qq617119142 第一步,创建一个Panel 和 三个 cube,搭建成如下图形状 第二步,创建2个点光源,一个为绿灯,一 ...

  3. C++ const、volatile、mutable的用法 (转)

      const.volatile.mutable的用法 鸣谢作者: http://blog.csdn.net/wuliming_sc/article/details/3717017 const修饰普通 ...

  4. Windows Store App 关键帧动画

    关键帧动画和插值动画类似,同样可以根据目标属性值的变化产生相应的动画效果,不同的是,插值动画是在两个属性值之间进行渐变,而关键帧动画打破了仅通过两个属性值控制动画的局限性,它可以在任意多个属性值之间进 ...

  5. iOS开发多线程篇—线程间的通信

    iOS开发多线程篇—线程间的通信 一.简单说明 线程间通信:在1个进程中,线程往往不是孤立存在的,多个线程之间需要经常进行通信 线程间通信的体现 1个线程传递数据给另1个线程 在1个线程中执行完特定任 ...

  6. HTML5本地数据库(WebSQL)[转]

    除了sessionStorage和localStorage外,HTML5还支持通过本地数据库进行本地数据存储,HTML5采用的是"SQLite"这种文件型数据库,该数据库多集中在嵌 ...

  7. POJ 3694 tarjan 桥+lca

    Network Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 7298   Accepted: 2651 Descripti ...

  8. SRM 657 DIV2

    -------一直想打SRM,但是感觉Topcoder用起来太麻烦了.题目还是英文,不过没什么事干还是来打一打好了.但是刚注册的号只能打DIV2,反正我这么弱也只适合DIV2了.. T1: 题目大意: ...

  9. AspectJ的基本使用

    参考: https://my.oschina.net/itblog/blog/208067

  10. Sae上传war包找不到编译文件

    最近在试新浪的sae平台,有个问题困扰了几天,现在想来还是自己对JAVA的理解不深入,这里写下仅作记忆. 问题:在整微信公众号平台进开发者中心的时候,token验证一直是失败的.但是项目在本地的环境中 ...