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 相关文章推荐
珊瑚虫IP库浅析
Feb 15 PHP
关于php 接口问题(php接口主要也就是运用curl,curl函数)
Jul 01 PHP
php数组去重复数据示例
Feb 25 PHP
thinkphp实现like模糊查询实例
Oct 29 PHP
php对关联数组循环遍历的实现方法
Mar 13 PHP
PHP date函数常用时间处理方法
May 11 PHP
php结合web uploader插件实现分片上传文件
May 10 PHP
PHP生成可点击刷新的验证码简单示例
May 13 PHP
php parse_str() 函数的定义和用法
May 23 PHP
PHP Header用于页面跳转时的几个注意事项
Oct 21 PHP
Laravel 自定命令以及生成文件的例子
Oct 23 PHP
PHP获取当前时间不准确问题解决方案
Aug 14 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
PHP使用正则表达式清除超链接文本
2013/11/12 PHP
将php数组输出html表格的方法
2014/02/24 PHP
PHP+jquery实时显示网站在线人数的方法
2015/01/04 PHP
php实现计算百度地图坐标之间距离的方法
2016/05/05 PHP
centos下file_put_contents()无法写入文件的原因及解决方法
2017/04/01 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
2017/11/16 PHP
PHP生成随机码的思路与方法实例探索
2019/04/11 PHP
PHP面向对象程序设计之对象克隆clone和魔术方法__clone()用法分析
2019/06/12 PHP
JS对select控件option选项的增删改查示例代码
2013/10/21 Javascript
详解jquery uploadify 上传文件
2013/11/09 Javascript
用JavaScript实现用一个DIV来包装文本元素节点
2014/09/09 Javascript
jquery右下角自动弹出可关闭的广告层
2015/05/08 Javascript
jQuery Html控件基本操作(日常收集整理)
2016/03/11 Javascript
Javascript之面向对象--封装
2016/12/02 Javascript
基于Bootstrap的网页设计实例
2017/03/01 Javascript
Bootstrap 3浏览器兼容性问题及解决方案
2017/04/11 Javascript
Python列表计数及插入实例
2014/12/17 Python
Python与shell的3种交互方式介绍
2015/04/11 Python
对Python的Django框架中的项目进行单元测试的方法
2016/04/11 Python
使用DataFrame删除行和列的实例讲解
2018/04/08 Python
selenium+python实现1688网站验证码图片的截取功能
2018/08/14 Python
通过python的matplotlib包将Tensorflow数据进行可视化的方法
2019/01/09 Python
Python Numpy计算各类距离的方法
2019/07/05 Python
django 邮件发送模块smtp使用详解
2019/07/22 Python
numpy ndarray 取出满足特定条件的某些行实例
2019/12/05 Python
python中count函数简单用法
2020/01/05 Python
pytorch实现mnist分类的示例讲解
2020/01/10 Python
python安装mysql的依赖包mysql-python操作
2021/01/01 Python
利用Canvas模仿百度贴吧客户端loading小球的方法示例
2017/08/13 HTML / CSS
英国网上香水店:Fragrance Direct
2016/07/20 全球购物
英国领先的品牌珠宝和配件供应商:Acotis Jewellery
2018/03/07 全球购物
办理居住证介绍信
2014/01/15 职场文书
2014幼儿园保育员工作总结
2014/11/10 职场文书
会计继续教育培训心得体会
2016/01/19 职场文书
Nginx进程管理和重载原理详解
2021/04/22 Servers
Python软件包安装的三种常见方法
2022/07/07 Python