有的时候我们dedecmsCMS的列表页,或是首页,需要在arclist标签里面加上当前文章的tag标签。
如何实现呢?
使用dedecmsCMS提供的php接口:[field:id runphp=yes] ……[/field:id]
完整的标签是:
01
{dede:arclist}
02
03
<p>标签 : [field:
id
runphp=
yes
]
04
05
global $dsql;
06
07
$tags =
''
;
08
09
$query =
"SELECT tag FROM `dede_taglist` WHERE aid='@me' "
;
10
11
$dsql->Execute(
'tag'
,$query);
12
13
while
($row = $dsql->GetArray(
'tag'
))
14
15
{
16
17
$tags .=
"<a href='/tags.php?/"
.urlencode($row['tag
'])."/'
>".$row[
'tag'
].
"</a>, "
;
18
19
}
20
21
@me=$tags;
22
23
[/field:
id
]</p>
24
25
{/dede:arclist}
测没有问题
下面是伪静态,可以不用看,自己测试一下。
还有是我自己弄的伪静态那个,调用了两个字段
[field:id runphp=yes]global $dsql;$tags = '';$query = "SELECT tid,tag FROM `dede_taglist` WHERE aid='@me' ";$dsql->Execute('tid,tag',$query);while($row = $dsql->GetArray('tid,tag')){$tags .= "<a href='/t-".urlencode($row['tid']).".html'>".$row['tag']."</a>";}@me=$tags;[/field:id]
总结:
如果你会php,那么,通过dedecmsCMS提供的runphp=yes就可以调用很多不能嵌套的问题,这个功能非常有用,当然,一般的人也用不到这个,对于仿站,或是做二次开发也许会用到。
THE END