资讯中心
News
phpcms面包屑导航样式修改方法
发布时间:2019-01-22 13:15   您所在的位置: 网站首页 > 新闻资讯 > 建站知识
在今天建站过程中遇见了面包屑导航代码是这样的
<li><a href="http://www.jianzhan0.com/">八梦网络工作室</a></li>
<li> > </li>
<li><a href="http://www.jianzhan0.com/wangzhanmuban/">网站模板</a></li>
<li> > </li>

但是phpcms默认生成的面包屑导航代码是这样的
<a href="http://www.jianzhan0.com/">八梦网络工作室</a>
 >
<a href="http://
www.jianzhan0.com/wangzhanmuban/">网站模板</a>
 >

遇见了这样的问题该如何修改呢?下面CMS集中营来给大家以这个示例讲解下修改方法。

打开 /phpcms/libs/functions/global.func.php 文件,在此文件中找到 catpos 函数,如下
/**
 * 当前路径
 * 返回指定栏目路径层级
 * @param $catid 栏目id
 * @param $symbol 栏目间隔符
 */
function catpos($catid, $symbol=' > '){
    $category_arr = array();
    $siteids = getcache('category_content','commons');
    $siteid = $siteids[$catid];
    $category_arr = getcache('category_content_'.$siteid,'commons');
    if(!isset($category_arr[$catid])) return '';
    $pos = '';
    $siteurl = siteurl($category_arr[$catid]['siteid']);
    $arrparentid = array_filter(explode(',', $category_arr[$catid]['arrparentid'].','.$catid));
    foreach($arrparentid as $catid) {
        $url = $category_arr[$catid]['url'];
        if(strpos($url, '://') === false) $url = $siteurl.$url;
        $pos .= '<a href="'.$url.'">'.$category_arr[$catid]['catname'].'</a>'.$symbol;
    }
    return $pos;
}


通过分析我们知道
1、$symbol为栏目间隔符,因为间隔符也被添加了<li>标签,因此我们把
function catpos($catid, $symbol=' > '){
修改为
function catpos($catid, $symbol='<li> > </li>'){
2、$pos .= '<a href="'.$url.'">'.$category_arr[$catid]['catname'].'</a> '.$symbol;这句话为输出的栏目链接及名称,因此我们给这句代码添加<li>标签
$pos .= '<li><a href="'.$url.'">'.$category_arr[$catid]['catname'].'</a></li>'.$symbol;

如下代码为CMS集中营修改后的代码
/**
 * 当前路径
 * 返回指定栏目路径层级
 * @param $catid 栏目id
 * @param $symbol 栏目间隔符
 */
function catpos($catid, $symbol='<li> > </li>'){
    $category_arr = array();
    $siteids = getcache('category_content','commons');
    $siteid = $siteids[$catid];
    $category_arr = getcache('category_content_'.$siteid,'commons');
    if(!isset($category_arr[$catid])) return '';
    $pos = '';
    $siteurl = siteurl($category_arr[$catid]['siteid']);
    $arrparentid = array_filter(explode(',', $category_arr[$catid]['arrparentid'].','.$catid));
    foreach($arrparentid as $catid) {
        $url = $category_arr[$catid]['url'];
        if(strpos($url, '://') === false) $url = $siteurl.$url;
        $pos .= '<li><a href="'.$url.'">'.$category_arr[$catid]['catname'].'</a></li>'.$symbol;
    }
    return $pos;
}
本文章由新概念互动原创,如没特殊注明,转载请注明来自:http://www.jianzhan0.com/zhishi/49237.html