扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
在phpcms中,联动菜单的管理位置位于“后台-扩展-联动菜单”,支持自定义添加。因为问题中没有具体说明在哪里调用,那我就从使用于开发的几个角度来讲联动菜单的调用:
在巴彦淖尔等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站制作、网站建设 网站设计制作按需定制网站,公司网站建设,企业网站建设,高端网站设计,全网整合营销推广,成都外贸网站制作,巴彦淖尔网站建设费用合理。
一、我们常用的是在自定义数据模型字段中:
创建的联动菜单项将应用于后台内容(文章)添加界面。在“后台-内容-数据模型-字段管理-添加字段”中,字段类型设置为“联动菜单”,然后在“菜单id”选项处通过联动菜单列表选择你要使用的菜单,例如地区联动菜单,并可设定联动菜单的返回值的方式。然后在内容添加编辑界面可出现此联动菜单项了。
主要设置颜色如下:
编辑界面显示效果如下:
当然,菜单显示样式(下拉式、弹窗式)可在“后台-扩展-联动菜单-修改”中配置。
二、在phpcms模板中直接调用联动菜单:
此方法不常用。具体方法是来到“后台-扩展-联动菜单列表”,你会看到每一个联动菜单都有一个调用代码,将此代码复制粘贴到你想放的模板位置即可。
但根据经验,这还不够,因为虽然通过此代码把联动菜单掉出来了,但是因为缺乏此菜单显示时的css、js文件导致缺乏样式与效果从而显示不正常,所以需要保证你的模板里同时引入了一下几个文件:
statics/js/dialog.js
statics/js/linkage/js/pop.js
statics/css/dialog.css
三、在php文件中或者在模板中使用万能标签直接读取联动菜单数据表中的数据:
此方法往往在我们进行二次开发中使用。联动菜单数据存放在v9_linkage数据表中,可根据字段parentid等字段指定获取不同层级数据。
因为开发相关会涉及到phpcms的相关类方法或函数相对来说比较复杂,这里就不详细讲解了,具体可参考官方开发手册以及iphpcms的视频教程,这里给出演示代码以作了解:
php程序中调用代码演示:
$linkage_db = pc_base::load_model("linkage_model"); //引入模型
$data = $linkage_db-select(array('parentid'=0)); //读取指定条件的数据
模板中万能标签写法演示:
{pc:get sql="select * from phpcms_linkage where parentid=0 and keyid=1" num="99"}
{loop $data $v}
li省份:{$v[name]}/li
{/loop}
{/pc}
本方法中获取的是原始的数据表数据,没有签名方法中的相关html代码css样式等修饰,自己根据需求进行相应处理渲染即可。
PS: 1. 以上方法前两个偏向于系统应用,后者偏向于开发,希望对你有所帮助吧。如果仍有疑惑可以追问。2.考虑的你说的“联动菜单”有指“导航条联动下拉效果”的嫌疑,这里附注一段调用演示代码:
{pc:content action="category" catid="0" num="25" siteid="$siteid" order="listorder ASC"}
lidiva href="{siteurl($siteid)}/"span网站首页/span/a/div/li
{loop $data $k $v}
lidiv
a href="{$v[url]}"span{$v[catname]}/span/a
ul class="sub_mune_ul" style="display: none; "
{pc:content action="category" catid="$k" num="10" siteid="$siteid" order="listorder ASC"}
{loop $data $r} lia href="{$r[url]}"{$r[catname]}/a/li {/loop}
{/pc}
/ul/div/li
{/loop}
{/pc}
标签调用:
页面模板内容:
lia href="[!--bclassurl--]" target="_blank" title="[!--bclassname--]"[!--bclassname--]/a
ul
[!--empirenews.listtemp--]
!--list.var1--
[!--empirenews.listtemp--]
/ul
/li
列表内容模板:
lia href="[!--classurl--]" target="_blank" title="[!--classname--]"[!--classname--]/a/li
帝国cms有自带的调用标签的,如果你还不会的话,你就自己用e:loop,灵动标签,来调用
自己写sql语句
可以用标签模板,自己先写一个标签模板,比如,dd 或者 li标签循环的,然后用showclasstemp标签进行调用
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流