thinkphp获取栏目和文章当前位置的方法


Posted in PHP onOctober 29, 2014

本文实例讲述了thinkphp获取栏目和文章当前位置的方法。分享给大家供大家参考。具体实现方法如下:

今天把博客一些细节完善了一下,其中修改了一下栏目页和文章页中的“当前位置”。以前栏目很少,就用死办法做的(首页 -> 栏目的名字),现在栏目多了,渐渐二级栏目,三级栏目也来了,这样的方式显然不太合适,于是就改进了一下。也不难,利用一个递归函数就可以了。

测试效果如下图所示:

thinkphp获取栏目和文章当前位置的方法

查看源文件效果:

<a href="https://3water.com">首页</a> -> <a href="/cat_2.html">PHP学习</a> -> <a href="/cat_9.html">ecshop</a> -> <a href="/cat_13.html">ecshop二次开发</a> -> ecshop加入百度地图,支持周边标记
//当前位置-第一个参数 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 相关文章推荐
使用PHP实现二分查找算法代码分享
Jun 24 PHP
PHP header()函数使用详细(301、404等错误设置)
Apr 17 PHP
解析dedeCMS验证码的实现代码
Jun 07 PHP
关于PHP语言构造器介绍
Jul 08 PHP
php简单分页类实现方法
Feb 26 PHP
初识通用数据库操作类――前端easyui-datagrid,form(php)
Jul 31 PHP
WordPress中创建用户角色的相关PHP函数使用详解
Dec 25 PHP
php实现留言板功能(会话控制)
May 23 PHP
Yii框架创建cronjob定时任务的方法分析
May 23 PHP
PHP开发之用微信远程遥控服务器
Jan 25 PHP
PHP PDOStatement::columnCount讲解
Jan 30 PHP
PHP http请求超时问题解决方案
Nov 13 PHP
thinkphp实现like模糊查询实例
Oct 29 #PHP
ThinkPHP结合AjaxFileUploader实现无刷新文件上传的方法
Oct 29 #PHP
PHP多个文件上传到服务器实例
Oct 29 #PHP
php跨站攻击实例分析
Oct 28 #PHP
php获取根域名方法汇总
Oct 28 #PHP
3款值得推荐的微信开发开源框架
Oct 28 #PHP
smarty中英文多编码字符截取乱码问题解决方法
Oct 28 #PHP
You might like
php抓即时股票信息
2006/10/09 PHP
php中通过正则表达式下载内容中的远程图片的函数代码
2012/01/10 PHP
PHP用strstr()函数阻止垃圾评论(通过判断a标记)
2013/09/28 PHP
php使用多个进程同时控制文件读写示例
2014/02/28 PHP
PHP5多态性与动态绑定介绍
2015/04/03 PHP
学习thinkphp5.0验证类使用方法
2017/11/16 PHP
PHP闭包定义与使用简单示例
2018/04/13 PHP
PHP实现二维数组中的查找算法小结
2018/06/09 PHP
javascript闭包的高级使用方法实例
2013/07/04 Javascript
原生JavaScript实现合并多个数组示例
2014/09/21 Javascript
js倒计时简单实现方法
2015/12/17 Javascript
使用AngularJS编写多选按钮选中时触发指定方法的指令代码详解
2017/07/24 Javascript
JS实现的input选择图片本地预览功能示例
2018/08/29 Javascript
浅谈VueJS SSR 后端绘制内存泄漏的相关解决经验
2018/12/20 Javascript
用Cordova打包Vue项目的方法步骤
2019/02/02 Javascript
elementUi vue el-radio 监听选中变化的实例代码
2019/06/28 Javascript
vue mvvm数据响应实现
2020/11/11 Javascript
JavaScript实现点击切换验证码及校验
2021/01/10 Javascript
Python获取央视节目单的实现代码
2015/07/25 Python
python版本单链表实现代码
2018/09/28 Python
opencv转换颜色空间更改图片背景
2019/08/20 Python
关于Python3 lambda函数的深入浅出
2019/11/27 Python
美国婴儿用品店:Babies”R”Us
2017/10/12 全球购物
苹果Mac升级:MacSales.com
2017/11/20 全球购物
电子商务自荐书范文
2014/01/04 职场文书
运动会开幕式主持词
2014/03/28 职场文书
建设幸福中国演讲稿
2014/09/11 职场文书
教师三严三实对照检查材料
2014/09/25 职场文书
学生违纪检讨书200字
2014/10/21 职场文书
党的群众路线教育实践活动心得体会(乡镇)
2014/11/03 职场文书
给女朋友道歉的话大全
2015/01/20 职场文书
Golang 实现获取当前函数名称和文件行号等操作
2021/05/08 Golang
Pytorch 统计模型参数量的操作 param.numel()
2021/05/13 Python
Python还能这么玩之用Python修改了班花的开机密码
2021/06/04 Python
Vue router配置与使用分析讲解
2022/12/24 Vue.js
css清除浮动clearfix:after的用法详解(附完整代码)
2023/05/21 HTML / CSS