phpcms v9联动菜单的调用方法及getlinkage函数详解phpcmsCMS教程 - phpcms - 爱建站

爱建站,dedecms,phpcms,帝国cms,WordPress,discuz,ecshop,z-blog,UcHome,UCenter,风讯CMS,科汛cms,新云cms

SEO SEO

首页  >   phpcms > phpcms v9联动菜单的调用方法及getlinkage函数详解phpcmsCMS教程  >  正文

 

{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模板


{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联动菜单的调用方法及getlinkage函数详解phpcmsCMS教程
http://www.yuedudg.cn/article/71401.html

 

友情链接
织梦之家 wp之家 帝国cms常识
phpcms之家 ecshop经验网 zblog之家
discuz经验网 cms综合网


Tags:


猜你喜欢

手机浏览本文
phpcms v9联动菜单的调用方法及getlinkage函数详解phpcmsCMS教程

phpcms v9联动菜单的调用方法及getlinkage函数详解phpcmsCMS教程

站内推荐

网站分类

标签列表

关于我们
文章内容来源互联网仅供参考,如果还有疑问请联系我们!我们将竭力帮您解决您的问题
联系我们:

QQ: 397423577 

email:397423577@qq.com

微信:ganenboy