dedecms里怎么调用左侧多级菜单
首先将下面这段代码贴到templets\default\footerhtm文件里(只要在此文件里就行,位置无所谓)
<!-- //二级子类下拉菜单 ,考虑SEO原因放置于底部
-->
<script type='text/javascript' src='{dede:globalcfg_cmsurl/}/images/js/dropdownjs'></script>
{dede:channelartlist typeid='top' cacheid='channelsonlist'}<ul id="dropmenu{dede:fieldtypeid/}" class="dropMenu">
{dede:channel type='son' noself='yes'} <li><a href="[field:typelink/]">[field:typename/]</a></li>
{/dede:channel}
</ul>
{/dede:channelartlist}
<script type="text/javascript">cssdropdownstartchrome("navMenu")</script>
刷新网页发现已经神奇地出现了下拉菜单,但此时是透明的,因为缺少一个下拉菜单。,原因是没有背景。
接下来你需要把DedeCMS56程序文件夹\dede\img里的mmenubggif(绿色背景,适用于绿色主题模板)或者DedeCMS55程 序文件夹\templets\images里的mmenubggif(蓝色背景,适用于蓝色主题模板)复制到DedeCMS57程序文件夹 /templets/default/images下面,现在你再看一下效果,呵呵,导航栏是不是已经出现熟悉的下拉菜单了
此时,你想要的效果基本上已经完成了,如果你还想做其他的设置,比如调整位置,只需要找到/templets/default/style/dedecmscss文件,ctrl+f 寻找dropMenu
如果只是调整宽度,只用修改 :
width: 100px;/------ //原来参数是120-,如果二级标题字数少,还可以把参数调整到80,乃至是60--------/padding left 改变后可以使其居中,也可以改变字体的颜色。
那就是你的栏目模板不存在,有可能是你的模板名称写错了,只能是以“htm”结尾,不是“html”结尾,还有就是你的栏目模板设置那地方写错模板名称了,如果你是单独更新一个栏目的话,那你好好看看栏目模板设置那,看是否写正确,是否和你的模板名称对应。如果是批量更新那你要一个个栏目更新,找出来是哪个栏目,然后再按上面说的去排查!
用channelartlist标签,循环调取出来所有菜单,用jquery插件实现“鼠标移动到关于我们或点击关于我们时,展示其子菜单"效果。参考http://wwwimooccom/code/443
网上有两种解决方法:
一种是说你曾用记事本编辑过dede的php文件
2是说你得修改
找include/userloginclassphp里面的keepuser()函数,
把@session_register 全部改写, 虽然不知道这个@是什么意思
把@session_register($this->keepUserIDTag); 注释掉,然后改为
if (!isset($_SESSION[$this->keepUserIDTag]))
全部有6个。
如下:
if (!isset($_SESSION[$this->keepUserIDTag]))
//@session_register($this->keepUserIDTag);
$_SESSION[$this->keepUserIDTag] = $this->userID;
if (!isset($_SESSION[$this->keepUserTypeTag]))
//@session_register($this->keepUserTypeTag);
$_SESSION[$this->keepUserTypeTag] = $this->userType;
if (!isset($_SESSION[$this->keepUserChannelTag]))
//@session_register($this->keepUserChannelTag);
$_SESSION[$this->keepUserChannelTag] = $this->userChannel;
if (!isset($_SESSION[$this->keepUserNameTag]))
//@session_register($this->keepUserNameTag);
$_SESSION[$this->keepUserNameTag] = $this->userName;
if (!isset($_SESSION[$this->keepUserPurviewTag]))
//@session_register($this->keepUserPurviewTag);
$_SESSION[$this->keepUserPurviewTag] = $this->userPurview;
if (!isset($_SESSION[$this->keepAdminStyleTag]))
//@session_register($this->keepAdminStyleTag);
$_SESSION[$this->keepAdminStyleTag] = $adminstyle;
然后就可以登入后台了。
我用的第二种方法解决的
1、确认网站后台所有操作都点击保存处于生效状态。
2、网站所有操作成功后,检查网站是否是动态模式还是静态模式,如果是静态或者伪静态模式需要进行如下操作。
3、点击左侧“生成”选项,在右侧子菜单中单击“一键更新网站”或者依次单击“更新栏目HEML”和“更新文档HTML。”
4、回到网站首页,单击刷新按钮或按F5,刷新页面。
将以下代码复制到footerhtm内即可(考虑SEO原因放置于底部) :
<!-- 二级子类下拉菜单 -->
<script type='text/javascript' src='{dede:globalcfg_cmsurl/}/images/js/dropdownjs'></script>
{dede:channelartlist typeid='top' cacheid='channelsonlist'}<ul id="dropmenu{dede:fieldtypeid/}" class="dropMenu">
{dede:channel type='son' noself='yes'} <li><a href="[field:typelink/]">[field:typename/]</a>
{/dede:channel}
</ul>
{/dede:channelartlist}
<script type="text/javascript">cssdropdownstartchrome("navMenu")</script>
复制的模版吗?
建议查看在各个浏览器中效果是不是都不正常呢?
看起来有点想在ie中的margin 浮动双倍的问题,将css中的这块代码找到 margin-left属性,修改增加一倍,看看在 不是ie6 中的效果,正常后就在该属性后面加上 _margin-left:原属性值。
0条评论