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

 更新时间:2014年10月29日 15:13:45   投稿:shichen2014  
这篇文章主要介绍了thinkphp获取栏目和文章当前位置的方法,通过一个自定义的递归函数读取目录来实现获取栏目和文章当前位置,是非常实用的技巧,需要的朋友可以参考下

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

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

测试效果如下图所示:

查看源文件效果:

复制代码 代码如下:
<a href="https://www.jb51.net">首页</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://www.jb51.net">首页</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程序设计有所帮助。

相关文章

  • Laravel 修改验证异常的响应格式实例代码详解

    Laravel 修改验证异常的响应格式实例代码详解

    这篇文章主要介绍了Laravel 修改验证异常的响应格式,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • CI框架AR操作(数组形式)实现插入多条sql数据的方法

    CI框架AR操作(数组形式)实现插入多条sql数据的方法

    这篇文章主要介绍了CI框架AR操作实现插入多条sql数据的方法,结合简单实例形式分析了CI框架使用数组实现多条数据插入的方法,需要的朋友可以参考下
    2016-05-05
  • PHPMYADMIN 简明安装教程 推荐

    PHPMYADMIN 简明安装教程 推荐

    简单的说,phpmyadmin就是一种mysql的管理工具,安装该工具后,即可以通过web形式直接管理mysql数据,而不需要通过执行系统命令来管理,非常适合对数据库操作命令不熟悉的数据库管理者,下面我就说下怎么安装该工具
    2010-03-03
  • php网站地图生成类示例

    php网站地图生成类示例

    网站地图对于一个网站来说至关重要,网站本身自己创建网站地图并提交给搜索引擎,是更好的方法。这样的话,你可以不受页面数量的限制,并且可以完全控制网站地图的结构信息,这里介绍一个小类,可以很方便的生成网站地图

    2014-01-01
  • PHP实现QQ快速登录的方法

    PHP实现QQ快速登录的方法

    这篇文章主要为大家详细介绍了PHP实现QQ快速登录的3种方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • 打造超酷的PHP数据饼图效果实现代码

    打造超酷的PHP数据饼图效果实现代码

    打造超酷的PHP数据饼图效果实现代码,比较适合做统计效果输出,需要的朋友可以参考下。很多年前的代码。
    2011-11-11
  • PHP设计模式(五)适配器模式Adapter实例详解【结构型】

    PHP设计模式(五)适配器模式Adapter实例详解【结构型】

    这篇文章主要介绍了PHP设计模式:适配器模式Adapter,结合实例形式详细分析了PHP适配器模式Adapter基本概念、功能、原理、用法及操作注意事项,需要的朋友可以参考下
    2020-05-05
  • php中大厂的面试题整理

    php中大厂的面试题整理

    在本篇文章里小编给大家整理的是一篇关于php中大厂的面试题整理内容,有兴趣的朋友们可以学习参考下。
    2021-01-01
  • 分享五个PHP7性能优化提升技巧

    分享五个PHP7性能优化提升技巧

    本文给大家分享五个PHP7性能优化提升技巧,对php7性能提升相关知识感兴趣的朋友一起学习吧
    2015-12-12
  • 关于Laravel参数验证的一些疑与惑

    关于Laravel参数验证的一些疑与惑

    这篇文章主要给大家介绍了关于Laravel参数验证的一些疑与惑,文中通过示例代码介绍的非常详细,对大家学习或者使用Laravel具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-11-11

最新评论