thinkphp实现面包屑导航(当前位置)例子分享


Posted in PHP onMay 10, 2014

以前栏目很少,就用死办法做的(首页 -> 栏目的名字),现在栏目多了,渐渐二级栏目,三级栏目也来了,这样的方式显然不太合适,于是就改进了一下。也不难,利用一个递归函数就可以了。

使用例子:

//当前位置-第一个参数 catid为当前栏目的id,第二个参数为文章的标题,调用栏目当前位置时第二个参数为空即可。
$this->assign("now_here",$this->now_here($catid,$res['title']));

实现代码:

//解释一下,栏目表category中的catid为栏目id,catname为栏目名称,asmenu为栏目父级的id,当为顶级栏目时,asmenu为0 。
protected function now_here($catid,$ext=''){
 $cat = M("Category");
 $here = '<a href="https://3water.com">首页</a>';
 $uplevels = $cat->field("catid,catname,asmenu")->where("catid=$catid")->find();
 if($uplevels['asmenu'] != 0)
 $here .= $this->get_up_levels($uplevels['asmenu']);
 $here .= ' -> <a href="/cat_'.$uplevels['catid'].'.html">'.$uplevels['catname']."</a>";
 if($ext != '') $here .= ' -> '.$ext;
 return $here;
}
protected function get_up_levels($id){
 $cat = M("Category");
 $here = '';
 $uplevels = $cat->field("catid,catname,asmenu")->where("catid=$id")->find();
 $here .= ' -> <a href="/cat_'.$uplevels['catid'].'.html">'.$uplevels['catname']."</a>";
 if($uplevels['asmenu'] != 0){
  $here = $this->get_up_levels($uplevels['asmenu']).$here;
 }
 return $here;
}
PHP 相关文章推荐
php 中文和编码判断代码
May 16 PHP
PHP数据类型的总结分析
Jun 13 PHP
php检测iis环境是否支持htaccess的方法
Feb 18 PHP
C#使用PHP服务端的Web Service通信实例
Apr 08 PHP
ThinkPHP3.2.2的插件控制器功能
Mar 05 PHP
php隐藏实际地址的文件下载方法
Apr 18 PHP
隐藏Nginx或Apache以及PHP的版本号的方法
Jan 03 PHP
PHP中list方法用法示例
Dec 01 PHP
php版阿里云OSS图片上传类详解
Dec 01 PHP
[原创]php token使用与验证示例【测试可用】
Aug 30 PHP
php源码的安装方法和实例
Sep 26 PHP
swoole锁的机制代码实例讲解
Mar 04 PHP
php把数据表导出为Excel表的最简单、最快的方法(不用插件)
May 10 #PHP
php实现zip压缩文件解压缩代码分享(简单易懂)
May 10 #PHP
php使用正则过滤js脚本代码实例
May 10 #PHP
PHP实现的交通银行网银在线支付接口ECSHOP插件和使用例子
May 10 #PHP
php中curl和file_get_content的区别
May 10 #PHP
php实现文件下载功能的几个代码分享
May 10 #PHP
php按百分比生成缩略图的代码分享
May 10 #PHP
You might like
收音机怀古---春雷3P7图片欣赏
2021/03/02 无线电
php&amp;java(二)
2006/10/09 PHP
php下图片文字混合水印与缩略图实现代码
2009/12/11 PHP
用PHP编写和读取XML的几种方式
2013/01/12 PHP
Linux下PHP连接Oracle数据库
2014/08/20 PHP
帝国cms常用标签汇总
2015/07/06 PHP
全面解读PHP的人气开发框架Laravel
2015/10/15 PHP
PHP 极验验证码实例讲解
2016/09/29 PHP
PHP实现文件上传下载实例
2016/10/18 PHP
php微信公众平台开发(三)订阅事件处理
2016/12/06 PHP
通过PHP实现获取访问用户IP
2020/05/09 PHP
WordPress 插件——CoolCode使用方法与下载
2007/07/02 Javascript
ASP.NET中AJAX 调用实例代码
2012/05/03 Javascript
ajax不执行success回调而是执行了error回调
2012/12/10 Javascript
JS实现将人民币金额转换为大写的示例代码
2014/02/13 Javascript
轻松实现JavaScript图片切换
2016/01/12 Javascript
JavaScript仿淘宝页面图片滚动加载及刷新回顶部的方法解析
2016/05/24 Javascript
js中获取时间new Date()的全面介绍
2016/06/20 Javascript
jQuery给div,Span, a ,button, radio 赋值与取值
2016/06/24 Javascript
JavaScript实现事件的中断传播和行为阻止方法示例
2017/01/20 Javascript
JavaScript之DOM插入更新删除_动力节点Java学院整理
2017/07/03 Javascript
angularJS的radio实现单项二选一的使用方法
2018/02/28 Javascript
vue中使用echarts制作圆环图的实例代码
2018/07/27 Javascript
JavaScript fetch接口案例解析
2018/08/30 Javascript
Node.js动手撸一个静态资源服务器的方法
2019/03/09 Javascript
Nuxt.js实现一个SSR的前端博客的示例代码
2019/09/06 Javascript
[01:20]DOTA2更新全新英雄 天涯墨客现已加入游戏
2018/08/25 DOTA
python清除字符串里非字母字符的方法
2015/07/02 Python
在VS Code上搭建Python开发环境的方法
2018/04/06 Python
Tensorflow使用tfrecord输入数据格式
2018/06/19 Python
基于Python fminunc 的替代方法
2020/02/29 Python
socket.io 和canvas 实现的共享画板功能
2019/05/22 HTML / CSS
文化宣传方案
2014/03/13 职场文书
停车场管理协议书范本
2014/10/08 职场文书
现役军人家属慰问信
2015/03/24 职场文书
vue+iview实现手机号分段输入框
2022/03/25 Vue.js