龙空技术网

Fastadmin CMS伪静态时面包屑导航网址不正确的应急处理

活泼枫叶6c 247

前言:

现在我们对“php面包屑”大概比较关注,姐妹们都想要剖析一些“php面包屑”的相关知识。那么小编同时在网络上收集了一些关于“php面包屑””的相关内容,希望小伙伴们能喜欢,大家快快来学习一下吧!

这个fastadmin cms项目伪静态的规则是一级栏目对应两级目录,即如栏目自定义URL名称为“abc”,那么内容页123默认的伪静态是路径是“/abc/123”,而这个项目的自定义伪静态为“/abc/bcd/123”。伪静态后网站浏览正常,排除伪静态问题,这就只能是面包屑的问题了。

fastadmin cms官方只对购买者本人开放技术支持,网上的资料非常少。这是个半道接的debug项目,根本不可能去找购买者查资料。因为时间又不允许仔细琢磨,模块里面尝试修改没有效果,于是直接在模版里面下手了。

经过尝试可以通过{$__CHANNEL__.parent_id}标签获取到当前栏目的父目录的id,通过{cms:channellist id="channel" type="brother" typeid="$parentid" }标签获得父目录的同级目录名称和网址,因此可以逐级取得父目录的信息。

在模版文件中直接插入php代码,尽量使用系统提供的现成数据,不进行后端操作。

{php}$str = '';$parentid=$__CHANNEL__['parent_id'];//$__CHANNEL__['parent_id']对应标签{$__CHANNEL__.parent_id}while ($parentid!=0){{/php}	{cms:channellist id="channel" type="brother" typeid="$parentid" }	{php}		if ($channel['id']===$parentid){//$channel['id']对应标签{cms:channel name="id" /},			$str.='<a href="'.$channel['url'].'">'.$channel['name'].'</a> >> ';//$channel['url']对应标签{cms:channel name="url" /};$channel['name']对应标签{cms:channel name="name" /}			$parentid=$channel['parent_id'];//$channel['parent_id']对应标签{cms:channel name="parent_id" /}		}	{/php}	{/cms:channellist}{php}}echo $str;{/php}<a href="{$__CHANNEL__.url}">{$__CHANNEL__.name}</a><!--当前目录-->{$__ARCHIVES__.title}<!--当前文章-->

这里对父目录的类型没有做要求,如果需要可以使用$channel['type']来进行判断。

以后有时间再慢慢琢磨相应模块。

标签: #php面包屑