相对官方的[!--newsnav--],处理款式呆板,可随意更改输出的款式。有的栏目用的二级域名,比方资讯页面,我想[!--newsnav--]显现的是 资讯主页>xxx>xxx 而不是 主页>资讯>xxx>xxx,用[!--newsnav--]就完成不了
所以要改善,怎么改善?
第一步:在e/class/userfun.php中参加下面的函数

//当时方位导航
functionuser_linknav($classid){
global$empire,$dbtbpre,$navclassid,$class_r,$public_r;
//当时栏目
if($classid=="selfinfo"){
if(empty($navclassid)){
$classid=0;
}else{
$classid=$navclassid;
//终极类别则显现同级类别
if($class_r[$classid][islast]&&$class_r[$classid][bclassid]){
$classid=$class_r[$classid][bclassid];
}
if($class_r[$classid][islast]&&empty($class_r[$classid][bclassid])){
$classid=0;
}
}
}
$query="selectclassname,bclassid,classpathfrom{$dbtbpre}enewsclasswhereclassid=".$classid;

$sql=$empire->query($query);
//echo"<ahref="/">主页</a>";
while($r=$empire->fetch($sql)){
findparent($r[bclassid]);
echo"&nbsp;>&nbsp;<ahref="/".$r[classurl]."">".$r[classname]."</a>";
}
}
//当时方位导航,递归查询父栏目
functionfindparent($classid){
global$empire,$dbtbpre;
$query="selectclassname,bclassid,classpathfrom{$dbtbpre}enewsclasswhereclassid=".$classid;
$sql=$empire->query($query);
while($r=$empire->fetch($sql)){
findparent($r[bclassid]);
$prefix="";
if($r[bclassid]){$prefix="&nbsp;>&nbsp;";}
echo$prefix."<ahref="/".$r[classurl]."">".$r[classname]."</a>";
}
}

第二步:在模板里,曾经写[!--newsnav--]的当地,直接替换成<?user_linknav($GLOBALS[navclassid]);?>

声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系邮箱:123456@qq.com 我们将配合处理!

原文地址:帝国CMS二次开发替换“当前位置导航newsnav发布于2022-06-09 07:43:43

相关推荐