phpcms v9联动菜单的调用方法及get_linkage函数详解

所属分类: CMS教程 / phpcms 阅读数: 1534
收藏 0 赞 0 分享
{get_linkage($areaid,1,' >> ',1)}

显示效果: PHPCMS吧 >> 模板下载 >> PHPCMS模板 [字段名字为 areaid]

如果你要在列表页或者其他地方调用,除了内容页,他们有个共同点,都是在 loop 循环体里.变量书写格式就需要修改,比如:

{get_linkage($r['areaid'],1,' >> ',1)}
复制代码

当然这个 $r 也不是绝对的.要看你的loop 是如何写的.
{loop $data $n $r} 如果是这样写的,就是 $r['areaid'] .
另外必须保证此字段被正确读取有值.

下面是global.func.php文件里函数get_linkage :

复制代码
代码如下:

/**
* 通过id获取显示联动菜单
* @param $linkageid 联动菜单ID
* @param $keyid 菜单keyid
* @param $space 菜单间隔符
* @param $result 递归使用字段1
* @param $infos 递归使用字段2
*/
function get_linkage($linkageid, $keyid, $space = '>', $type = 1, $result = array(), $infos = array()) {
if($space=='' || !isset($space))$space = '>';
if(!$infos) {
$datas = getcache($keyid,'linkage');
$infos = $datas['data'];
}
if($type == 1 ) {
if(array_key_exists($linkageid,$infos)) {
$result[]=$infos[$linkageid]['name'];
return get_linkage($infos[$linkageid]['parentid'], $keyid, $space, $type, $result, $infos);
} else {
if(count($result)>0) {
krsort($result);
$result = implode($space,$result);
return $result;
}
else {
return $result;
}
}
} else {
return $infos[$linkageid]['name'];
}
}

共有六个参数,尤其是前两个,不要搞颠倒了. $linkageid, $keyid . 第一个$linkageid是菜单id,你发布的时候选择的最终极菜单id,$keyid是菜单keyid,后台默认的联动菜单PHPCMS吧的keyid就是1.有点绕口,确实,这俩菜单id是一回事,但是他们的层级不一样.keyid就是最大的那个父id,linkageid是子级id.第三个$space就是连接符号,第四个$type就是调用内容,如果是1就调用完整的,如果设置为0就调用最终极的,即如果是0就只显示PHPCMS模板。默认为1的。
更多精彩内容其他人还在看

PHPCMS V9 定时发布文章的实现方法

今天和大家分享下 PHPCMS V9 文章定时发布的方法,定时发布文章可以做到预约发布、自动发布,方便我们在忙的时候更新文章,保证搜索引擎的收录
收藏 0 赞 0 分享

phpcms v9站内外搜索代码分享

站内外搜索对一个网站有很重要的意义,接下来为大家介绍下phpcms v9实现站内外搜索的代码,感兴趣的朋友可以参考下哈
收藏 0 赞 0 分享

Phpcms v9 栏目列表选择性调用数据具体方法

在PC v9栏目列表中调用出了指定文章的内容,今天介绍下在栏目数据调用中从指定行数开始,比如从第2条或第N条开始调用,感兴趣的朋友可以参考下
收藏 0 赞 0 分享

PHPCMS V9 Ckeditor编辑器添加排版功能实现介绍

v9使用的Ckeditor编辑器,在使用过程中有些不尽人意的地方,接下来为大家介绍下我,改动几个地方,让Ckeditor编辑更加实用一些,感兴趣的朋友可以参考下哈,希望可以帮助到你
收藏 0 赞 0 分享

PHPCMS V9评论模块伪静态与TAG模块伪静态设置

本文为大家介绍下PHPCMS V9评论模块伪静态与TAG模块伪静态设置,感兴趣的朋友可以参考下哈,希望对你学习PHPCMS V9有所帮助
收藏 0 赞 0 分享

phpcms 的sso通信失败的解决和思路

朋友的phpcms 在sso 登陆设置中,出现通信失败,最终调试发现,服务器本机linux,无法访问本身域名的ip
收藏 0 赞 0 分享

关于phpcms2008 内部递增标变量 $n 使用时的注意事项

有一个递增的内部变量 $n,它是从1开始逐渐递增的,如果{$n}则表示具体的值,下面为大家介绍下关于phpcms2008 内部递增标变量 $n 的注意事项
收藏 0 赞 0 分享

PHPCMS V9跨站调用推荐位出现URL连接为空问题的解决方法

如果你在使用PHPCMS V9的时候需要在不同的站点之间调用推荐位可能会出现链接的URL为空的情况,下面是具体的解决方法,有类似问题的朋友可以参考下哈
收藏 0 赞 0 分享

Phpcms V9网站从本地上传到服务器需要修改的地方小结

网站在本地做好后要迁移到服务器上;网站在发展的过程中,很可能多次的修改域名。那么在Phpcms V9中我们要怎么进行设置呢
收藏 0 赞 0 分享

phpcms 读不到缓存 页面空白的解决方法

网站在服务器上运行正常,弄到我电脑上进入网站后台,更新缓存页面空白,访问首页还是空白。调试发现是在include/common.inc.php中执行到下面不执行了
收藏 0 赞 0 分享
查看更多