Heim  >  Artikel  >  CMS-Tutorial  >  So verwenden Sie Empire-Tags, um die aktuelle Spalte hervorzuheben

So verwenden Sie Empire-Tags, um die aktuelle Spalte hervorzuheben

藏色散人
藏色散人Original
2019-12-13 09:16:082348Durchsuche

So verwenden Sie Empire-Tags, um die aktuelle Spalte hervorzuheben

如何用帝国标签实现当前栏目高亮?

用帝国自定义标签实现当前栏目高亮

一番测试下来,找到了自己觉得方便的方法, 特记录在此。 

1、因为要用到自定义标签,所以首先要在\e\class\userfun.php 加入一个自定义函数, 即 

推荐学习《帝国cms教程

代码如下:

//取得顶级栏目ID函数 
function user_GetTopBclassid($classid){ 
global $class_r; 
$fr=explode('|',$class_r[$classid][featherclass]); 
$topbclassid=$fr[1]?$fr[1]:$classid;//取得第一级栏目id 
return $topbclassid; 
}

2、接下来用灵动标签调用导航部分,用5d6652f3e23d11ca2c26c39f8faa1fc5动态获取当前栏目id以及父栏目id。 

代码如下:

<ul class="menu"> 
<li id="current"><a href="/">首页</a></li> 
<!--灵动标签开始--> 
[e:loop={&#39;select classid,classname,classpath,bclassid,bname from [!db.pre!]enewsclass where bclassid=0 order by classid&#39;,0,24,0}] 
<li id="current<?=$bqr[classid]?>"><a href="<?=$public_r[newsurl]?><?=$bqr[classpath]?>" title="<?=$bqr[bname]?>" target="_self" ><?=$bqr[classname]?></a></li> 
[/e:loop] 
<style type="text/css"><!--加入动态css样式--> 
<!-- 
#menu #current<?=user_GetTopBclassid($GLOBALS[navclassid])?> /*---动态获取当前栏目id -*/ 
{background:url(/images/2008a/bg_menu_on_left.gif) no-repeat; font-weight:bold;} 
#menu #current<?=user_GetTopBclassid($GLOBALS[navclassid])?> a,#menu #current<?=user_GetTopBclassid($GLOBALS[navclassid])?> a:hover{color:#000; background:url(/images/2008a/bg_menu_on_right.gif) no-repeat right;} 
--> 
</style> 
<!--灵动标签结束-->

3、在模板变量中制作一个变量, 如 [!--temp.tab--] 在其中加入第2步的代码, 就可以在首页及列表页调用啦, 

引用wc在论坛的一个回复 5d6652f3e23d11ca2c26c39f8faa1fc5 

当为首页的时候当前栏目是为空即channle 

当前为一级栏目时,则为channle当前栏目id 

当有栏目为非一级栏目,则为channle一级父栏目id 

封面模板、列表模板、内容模板下都有效

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Empire-Tags, um die aktuelle Spalte hervorzuheben. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn