700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 织梦DedeCMS栏目页内容页调用上级栏目名称和链接(含各种调用代码)

织梦DedeCMS栏目页内容页调用上级栏目名称和链接(含各种调用代码)

时间:2020-03-19 21:27:09

相关推荐

织梦DedeCMS栏目页内容页调用上级栏目名称和链接(含各种调用代码)

在制作DEDE的模板的时候经常需要用到调用上一级栏目的栏目名称和栏目链接,网上找了一大堆办法,终于实现这个效果

方法如下:

GetOne(“SELECT reid FROM dede_arctype whereid=@me”); $reid = $reid[‘reid’]; $typename = $dsql->GetOne(“SELECT typedir FROM dede_arctype where id=$reid”); @me=str_replace(‘{cmspath}’,”,$typename[‘typedir’]);{/dede:field.typeid}” >/a/dedejq/{dede:field.typeid runphp=’yes”} global $dsql ; $reid = $dsql->GetOne(“SELECT reid FROM dede_arctype whereid=@me”); $reid = $reid[‘reid’]; $typename = $dsql->GetOne(“SELECT typename FROM dede_arctype where id=$reid”); @me=$typename[‘typename’];{/dede:field.typeid}

其中红色字体为栏目链接调用,蓝色字体为栏目名称调用

当然还有别的调用方式及办法,详见如下

调用当前栏目的名称

{dede:field name=”typename”}

调用该顶级频道下所有子栏目,row代表调用5条

{dede:channel type=’son’ row=’5′} [field:typename/] {/dede:channel}

调用子栏目的当前顶级栏目名称

{dede:channel type=’top’}[field:typename/] {/dede:channel}

N级子栏目调用最上级栏目名称

{dede:field name=’position’ runphp=’yes’}$tc=”-“; //分隔符

$tw=$GLOBALS[‘cfg_list_symbol’]; //调用位置分隔符

$tf=split($tw,@me); //分解成数组

$ta=1;$tk=trim($tf[$ta]);$tk=substr($tk,0,-2);@me=$tk; //赋值给@me

{/dede:field}

N级子栏目调用上级栏目名称

方法1:

{dede:field name=’position’ runphp=’yes’}$tc=”-“; //分隔符

$tw=$GLOBALS[‘cfg_list_symbol’]; //调用位置分隔符

$tf=split($tw,@me); //分解成数组

$ta=(count($tf)-3);$tk=trim($tf[$ta]);@me=$tk; //赋值给@me

{/dede:field}

方法2:

GetOne(“SELECT reid FROM dede_arctype whereid=@me”); $reid = $reid[‘reid’]; $typename = $dsql->GetOne(“SELECT typedir FROM dede_arctype where id=$reid”); @me=str_replace(‘{cmspath}’,”,$typename[‘typedir’]);{/dede:field.typeid} >/a/dedejq/{dede:field.typeid runphp=’yes”} global $dsql ; $reid = $dsql->GetOne(“SELECT reid FROM dede_arctype whereid=@me”); $reid = $reid[‘reid’]; $typename = $dsql->GetOne(“SELECT typename FROM dede_arctype where id=$reid”); @me=$typename[‘typename’];{/dede:field.typeid}

调用指定栏目

{dede:type typeid=’栏目id’} [field:typename/] {/dede:type}

DEDE标题栏:文章标题-2级栏目-1级栏目-网站名”样式显示

{dede:field name=’title’/}-{dede:field name=’position’ runphp=’yes’}$tc=”-“; //分隔符

$tw=$GLOBALS[‘cfg_list_symbol’]; //调用位置分隔符

@me=html2text(@me); //去除html标签

$tf=split($tw,@me); //分解成数组

for($ta=(count($tf)-2);$ta>=1;$ta–){ //循环赋值给$tk

$tk.=trim($tf[$ta]).$tc;}$tk=substr($tk,0,-1);@me=$tk; //赋值给@me

{/dede:field}-{dede:global name=’cfg_webname’/}

下面是调用顶级栏目名称的方法:

方法一:

/a/dedejq/{dede:field.typeid runphp=’yes’} $ID = @me; $sql = "SELECT * FROM `dede_arctype` WHERE id=$ID"; $query = mysql_query($sql);$row=mysql_fetch_array($query); $relID = "$row[reid]"; if($relID == 0) {@me = $row[typename];}else{$sql = "SELECT `typename` FROM `dede_arctype` WHERE id=$relID"; $query = mysql_query($sql); $row=mysql_fetch_array($query); @me = $row[typename];}{/dede:field.typeid}

这个方法语句有些长。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。