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之第七天
Oct 09 PHP
利用PHP制作简单的内容采集器的代码
Nov 28 PHP
php实现的在线人员函数库
Apr 09 PHP
php生成随机数或者字符串的代码
Sep 05 PHP
基于PHP Socket配置以及实例的详细介绍
Jun 13 PHP
php中adodbzip类实例
Dec 08 PHP
PHP开启opcache提升代码性能
Apr 26 PHP
php实现将上传word文件转为html的方法
Jun 03 PHP
PHP合并数组+号和array_merge的区别
Jun 25 PHP
php技术实现加载字体并保存成图片
Jul 27 PHP
PHP使用逆波兰式计算工资的方法
Jul 29 PHP
php 函数使用可变数量的参数方法
May 02 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
IIS6+PHP5+MySQL5+Zend Optimizer+phpMyAdmin安装配置图文教程 2009年
2009/06/08 PHP
用php随机生成福彩双色球号码的2种方法
2013/02/04 PHP
用PHP实现浏览器点击下载TXT文档的方法详解
2013/06/02 PHP
php购物车实现方法
2015/01/03 PHP
JQuery插件Quicksand实现超炫的动画洗牌效果
2015/05/03 Javascript
用window.onerror捕获并上报Js错误的方法
2016/01/27 Javascript
vue使用Axios做ajax请求详解
2017/06/07 Javascript
Angular.js中$resource高大上的数据交互详解
2017/07/30 Javascript
Angular 项目实现国际化的方法
2018/01/08 Javascript
JavaScript函数节流和函数去抖知识点学习
2018/07/31 Javascript
Node.js+Express+Mysql 实现增删改查
2019/04/03 Javascript
Vue使用localStorage存储数据的方法
2019/05/27 Javascript
Javascript异步执行不按顺序解决方案
2020/04/30 Javascript
JavaScript 面向对象程序设计详解【类的创建、实例对象、构造函数、原型等】
2020/05/12 Javascript
Vue常用API、高级API的相关总结
2021/02/02 Vue.js
[04:22]DOTA2上海特级锦标赛主赛事第四日TOP10
2016/03/06 DOTA
python解析中国天气网的天气数据
2014/03/21 Python
Python和Java进行DES加密和解密的实例
2018/01/09 Python
python 常用的基础函数
2018/07/10 Python
Python+OpenCV目标跟踪实现基本的运动检测
2018/07/10 Python
Python 互换字典的键值对实例
2019/02/12 Python
简单了解django索引的相关知识
2019/07/17 Python
python Pillow图像处理方法汇总
2019/10/16 Python
opencv resize图片为正方形尺寸的实现方法
2019/12/26 Python
Windows下实现将Pascal VOC转化为TFRecords
2020/02/17 Python
澳洲本土太阳镜品牌:Quay Australia
2019/07/29 全球购物
.NET初级开发工程师面试题(包括Javascript)
2012/08/22 面试题
中医专业职业生涯规划书范文
2014/01/04 职场文书
北京申奥口号
2014/06/19 职场文书
企业读书活动总结
2014/06/30 职场文书
家庭贫困证明范本(经典版)
2014/09/22 职场文书
员工年终考核评语
2014/12/31 职场文书
孔子观后感
2015/06/08 职场文书
贷款工作证明模板
2015/06/12 职场文书
教你怎么用Python实现多路径迷宫
2021/04/29 Python
Apache自带的ab压力测试工具的实现
2022/07/23 Servers