PHPCMS V9 添加二级导航的思路详解


Posted in PHP onOctober 20, 2016

今天看了看phpcms 写到二级导航时发现点问题,查询导航栏的信息时返回的$r[arrchildid]与自己想象的不符,文档上说是返回子栏目id但是却有些不同。

开始的思路:

<ul class="nav navbar-nav">
<li class="active"><a href="{siteurl($siteid)}">首页</a></li>
{pc:content action="category" catid="0" num="10" siteid="$siteid" order="listorder ASC"}
{loop $data $r}
{if $r[arrchildid]}
<li class="dropdown">
<a href="{$r[url]}" class="dropdown-toggle" child="{$r[arrchildid]}" data-toggle="dropdown">{$r[catname]}<b class="caret"></b></a>
<ul class="dropdown-menu">
{pc:content action="category" catid="$r[catid]" num="10" siteid="$siteid" order="listorder ASC" return="data2"}
{loop $data2 $v}
<li><a href="{$v[url]}">{$v[catname]}</a></li>
{/loop}
{/pc}
</ul> 
</li>
{/if}
{/loop}
{/pc}
</ul>

大致思路:查询该文档下是否有子栏目id,如果有则输出二级导航。代码中第5行是检测该栏目下是否有子栏目id,但是我发现当没有子栏目时会返回当前栏目的id导致判断无法达到预期的效果,所以改变思路,代码如下:

<ul class="nav navbar-nav">
<li class="active"><a href="{siteurl($siteid)}">首页</a></li>
{pc:content action="category" catid="0" num="10" siteid="$siteid" order="listorder ASC"}
{loop $data $r}
{if $r[arrchildid] != $r[catid]}
<li class="dropdown">
<a href="{$r[url]}" class="dropdown-toggle" child="{$r[arrchildid]}" data-toggle="dropdown">{$r[catname]}<b class="caret"></b></a>
<ul class="dropdown-menu">
{pc:content action="category" catid="$r[catid]" num="10" siteid="$siteid" order="listorder ASC" return="data2"}
{loop $data2 $v}
<li><a href="{$v[url]}">{$v[catname]}</a></li>
{/loop}
{/pc}
</ul> 
</li>
{else}
<li><a href="{$r[url]}">{$r[catname]}</a></li>
{/if}
{/loop}
{/pc}
</ul>

判断获取到的子栏目id是否等于该栏目id,等于则表示没有子栏目,不等于则表示有子栏目且显示子栏目

以上所述是小编给大家介绍的PHPCMS V9 添加二级导航的思路详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
PHP音乐采集(部分代码)
Feb 14 PHP
php is_file()和is_dir()用于遍历目录时用法注意事项
Mar 02 PHP
PHP访问MYSQL数据库封装类(附函数说明)
Dec 04 PHP
php循环检测目录是否存在并创建(循环创建目录)
Jan 06 PHP
深入了解PHP类Class的概念
Jun 14 PHP
解析php中用PHPMailer来发送邮件的示例(126.com的例子)
Jun 24 PHP
php计算数组不为空元素个数的方法
Jan 27 PHP
PHP+MYSQL会员系统的开发实例教程
Aug 23 PHP
php 批量查询搜狗sogou代码分享
May 17 PHP
Yii框架的路由配置方法分析
Sep 09 PHP
laravel添加前台跳转成功页面示例
Oct 22 PHP
PHP遍历数组的6种方式总结
Nov 17 PHP
php实现登陆模块功能示例
Oct 20 #PHP
php实现文章置顶功能的方法
Oct 20 #PHP
PHP上传图片时判断上传文件是否为可用图片的方法
Oct 20 #PHP
通过chrome浏览器控制台(Console)进行PHP Debug的方法
Oct 19 #PHP
php禁用cookie后session设置方法分析
Oct 19 #PHP
php无限级分类实现方法分析
Oct 19 #PHP
php简单截取字符串代码示例
Oct 19 #PHP
You might like
PHP6 先修班 JSON实例代码
2008/08/23 PHP
Apache环境下PHP利用HTTP缓存协议原理解析及应用分析
2010/02/16 PHP
在Debian系统下配置LNMP的教程
2015/07/09 PHP
PHP中递归的实现实例详解
2017/11/14 PHP
PHP实现的函数重载功能示例
2018/08/03 PHP
PHP的new static和new self的区别与使用
2019/11/27 PHP
javascript SocialHistory 检查访问者是否访问过某站点
2008/08/02 Javascript
return false;和e.preventDefault();的区别
2010/07/11 Javascript
为radio类型的INPUT添加客户端脚本(附加实现JS来禁用onClick事件思路代码)
2010/11/11 Javascript
JQuery插件Style定制化方法的分析与比较
2012/05/03 Javascript
iframe 上下滚动条如何默认在下方实现原理
2012/12/10 Javascript
JS测试显示屏分辨率以及屏幕尺寸的方法
2013/11/22 Javascript
JS执行删除前的判断代码
2014/02/18 Javascript
node.js中的fs.closeSync方法使用说明
2014/12/17 Javascript
js判断手机和pc端选择不同执行事件的方法
2015/01/30 Javascript
Bootstrap菜单按钮及导航实例解析
2016/09/09 Javascript
微信小程序实现点击按钮修改view标签背景颜色功能示例【附demo源码下载】
2017/12/06 Javascript
vue.js整合vux中的上拉加载下拉刷新实例教程
2018/01/09 Javascript
微信小程序实现选项卡效果
2018/11/06 Javascript
Vue.js递归组件实现组织架构树和选人功能
2019/07/04 Javascript
jquery实现购物车基本功能
2019/10/25 jQuery
[02:57]DOTA2亚洲邀请赛 SECRET战队出场宣传片
2015/02/07 DOTA
[00:37]食人魔魔法师轮盘吉兆顺应全新至宝将拥有额外款式
2019/12/19 DOTA
浅谈Python中重载isinstance继承关系的问题
2018/05/04 Python
利用Python进行数据可视化常见的9种方法!超实用!
2018/07/11 Python
pycharm 配置svn的图文教程(手把手教你)
2021/01/15 Python
利用python实现汉诺塔游戏
2021/03/01 Python
HTML5在微信内置浏览器下右上角菜单的调整字体导致页面显示错乱的问题
2021/01/19 HTML / CSS
Champion澳大利亚官网:美国冠军运动服装
2018/05/07 全球购物
高一数学教学反思
2014/02/07 职场文书
领导班子三严三实心得体会
2014/10/13 职场文书
给病人的慰问信
2015/03/23 职场文书
入党积极分子群众意见
2015/06/01 职场文书
男生贾里读书笔记
2015/06/30 职场文书
2019商业计划书格式、范文
2019/04/24 职场文书
linux下安装redis图文详细步骤
2021/12/04 Redis