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 smarty 二级分类代码和模版循环例子
Jun 16 PHP
php数组函数序列之array_values() 获取数组元素值的函数与方法
Oct 30 PHP
smarty基础之拼接字符串的详解
Jun 18 PHP
PHP中HTML标签过滤技巧
Jan 07 PHP
php中get_object_vars()方法用法实例
Feb 08 PHP
php显示指定目录下子目录的方法
Mar 20 PHP
Laravel 5 框架入门(三)
Apr 09 PHP
php读取csc文件并输出
May 21 PHP
PHP中Enum(枚举)用法实例详解
Dec 07 PHP
PHP文件上传小程序 适合初学者学习!
May 23 PHP
Laravel 实现Eloquent模型分组查询并返回每个分组的数量 groupBy()
Oct 23 PHP
thinkphp框架表单数组实现图片批量上传功能示例
Apr 04 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 计算代码执行耗时的代码修正网上普遍错误
2011/05/14 PHP
php获取ajax的headers方法与内容实例
2017/12/27 PHP
thinkphp5框架API token身份验证功能示例
2019/05/21 PHP
jQuery 菜单随滚条改为以定位方式(固定要浏览器顶部)
2012/05/24 Javascript
JS常用正则表达式总结
2013/11/12 Javascript
javascript绘制漂亮的心型线效果完整实例
2016/02/02 Javascript
jQuery实现下拉框多选 jquery-multiselect 的实例代码
2016/07/14 Javascript
微信小程序 富文本转文本实例详解
2016/10/24 Javascript
微信开发 js实现tabs选项卡效果
2016/10/28 Javascript
微信小程序 网络请求(post请求,get请求)
2017/01/17 Javascript
js实现图片360度旋转
2017/01/22 Javascript
jQuery点击导航栏选中更换样式的实现代码
2017/01/23 Javascript
jQuery插件echarts设置折线图中折线线条颜色和折线点颜色的方法
2017/03/03 Javascript
使用gulp搭建本地服务器并实现模拟ajax
2017/04/05 Javascript
jQuery实现拖动效果的实例代码
2017/06/25 jQuery
jquery 获取索引值在一定范围的列表方法
2018/01/25 jQuery
使用vue-cli(vue脚手架)快速搭建项目的方法
2018/05/21 Javascript
Webpack中雪碧图插件使用详解
2018/05/25 Javascript
Vue实现穿梭框效果
2020/09/30 Javascript
[32:30]夜魇凡尔赛茶话会 第一期01:谁是卧底
2021/03/11 DOTA
python中的多重继承实例讲解
2014/09/28 Python
跟老齐学Python之关于类的初步认识
2014/10/11 Python
python操作xlsx文件的包openpyxl实例
2018/05/03 Python
Python小游戏之300行代码实现俄罗斯方块
2019/01/04 Python
详解Python中is和==的区别
2019/03/21 Python
详解Python:面向对象编程
2019/04/10 Python
python判断链表是否有环的实例代码
2020/01/31 Python
Selenium自动化测试工具使用方法汇总
2020/06/12 Python
解决Python3.7.0 SSL低版本导致Pip无法使用问题
2020/09/03 Python
英国儿童设计师服装和玩具购物网站:Zac & Lulu
2020/10/19 全球购物
就业自荐书
2013/12/05 职场文书
自我介绍演讲稿
2014/01/15 职场文书
教师个人鉴定材料
2014/02/08 职场文书
小学生元旦广播稿
2014/02/21 职场文书
2016春节慰问信范文
2015/03/25 职场文书
2016优秀青年志愿者事迹材料
2016/02/25 职场文书