当前位置:首页 > 行业动态 > 正文

如何在织梦dedecms中实现列表页调用tag功能?

在织梦dedecms中,列表页调用tag的方法是使用内置标签 dede_field。具体代码如下:,,“ html,{dede:field name='tag'/},“

在织梦dedecms系统中,列表页调用tag标签的方法有多种,以下是一些常用的方法:

1、首页、列表页和文章页调用所有的tag

使用以下代码可以调用所有tag标签:

“`

{dede:tag row=’8′ getall=’1′ sort=’month’}

“`

row参数用于设置调用的条数,getall参数设置为1表示获取所有的tag标签,sort参数用于排序方式。

2、列表页调用每一篇文章的tag

使用以下代码可以在列表页调用每篇文章的tag标签:

“`

[field:id runphp=’yes’]

$tsql = new DedeSql(false);

$tags = ”;

$tsql>SetQuery("Select i.tag From tf_taglist t left join tf_tagindex i on i.id=t.tid where t.aid=’@me’");

$tsql>Execute(‘t’);

while($row = $tsql>GetArray(‘t’,MYSQL_ASSOC)){

$tags .= "<a href=’/tags.php?/".urlencode($row[‘tag’])."’>".$row[‘tag’]."</a>"; }

@me=$tags;

[/field:id]

“`

这段代码通过DedeSql对象查询数据库中的tag标签,并将结果以超链接的形式输出。

3、文章页调用该篇正文的tag

使用以下代码可以在文章页调用当前文章的tag标签:

“`

{dede:field.tags/}

“`

如果希望tag标签带有链接,可以在include/common.func.php文件中进行修改,将大约755行处的代码:

“`

$tags .= ($tags==” ? $row[‘tag’] : ‘,’.$row[‘tag’]);

“`

修改为:

“`

$tags .= ($tags==” ? "<a href=/tags.php?/{$row[‘tag’]} target=_blank>{$row[‘tag’]}</a>" : ‘,’."<a href=/tags.php?/{$row[‘tag’]} target=_blank>{$row[‘tag’]}</a>");

“`

这样修改后,文章页的tag标签就会带上链接。

4、列表页调用TAG标签并带上链接

使用以下代码可以在列表页调用tag标签并带上链接:

“`

[field:id runphp=’yes’]

global $cfg_cmspath;

$tags = GetTags(@me);

$revalue = ”;

$tags = explode(‘,’, $tags);

foreach($tags as $key => $value){

if($value){

$revalue .= ‘<a href="’.$cfg_cmspath.’/tags.php?/’.$value.’/">’.$value.'</a>’;

}

}

@me=$revalue;

[/field:id]

“`

这段代码首先调用GetTags函数获取文档对应的tag列表,然后将获取到的值以逗号为标准拆分为数组,最后循环输出每个数组元素并加上链接。

FAQs

1、问题一:如何在织梦dedecms中调用热门tag标签?

解答:可以使用以下代码调用热门tag标签:

“`

{dede:tag row=’10’ sort=’month’}

<a href='[field:link/]’>[field:tag /]</a>

{/dede:tag}

“`

row参数设置为10表示调用10个热门tag标签,sort参数设置为month表示按月排序。

2、问题二:如何在织梦dedecms中调用随机tag标签?

解答:可以使用以下代码调用随机tag标签:

“`

{dede:tag row=’60’ sort=’rand’}

<a href='[field:link/]’>[field:highlight/]([field:result/])</a>

{/dede:tag}

“`

row参数设置为60表示调用60个随机tag标签,sort参数设置为rand表示随机排序。

方法 说明 示例代码
{dede:tag row='10' pagename='taglist' limit='10,10' } 使用tag标签调用tag列表,row为每页显示的tag数量,pagename为分页标签名称,limit为分页的起始位置和结束位置 {dede:tag row='10' pagename='taglist' limit='10,10' }
{dede:tag row='10' titlelen='20' type='a' } 使用tag标签调用tag列表,row为每页显示的tag数量,titlelen为tag标题显示的最大长度,type为tag类型(a为文章,c为分类) {dede:tag row='10' titlelen='20' type='a' }
{dede:tag row='10' pagename='taglist' limit='10,10' areaname='tagareaname' } 使用tag标签调用tag列表,row为每页显示的tag数量,pagename为分页标签名称,limit为分页的起始位置和结束位置,areaname为tag所属区域名称 {dede:tag row='10' pagename='taglist' limit='10,10' areaname='tagareaname' }
{dede:tag row='10' titlelen='20' type='a' typeurl='1' } 使用tag标签调用tag列表,row为每页显示的tag数量,titlelen为tag标题显示的最大长度,type为tag类型(a为文章,c为分类),typeurl为tag类型url的生成方式(1为带参数,0为不带参数) {dede:tag row='10' titlelen='20' type='a' typeurl='1' }
{dede:tag row='10' titlelen='20' type='a' typeurl='1' areaname='tagareaname' } 使用tag标签调用tag列表,row为每页显示的tag数量,titlelen为tag标题显示的最大长度,type为tag类型(a为文章,c为分类),typeurl为tag类型url的生成方式(1为带参数,0为不带参数),areaname为tag所属区域名称 {dede:tag row='10' titlelen='20' type='a' typeurl='1' areaname='tagareaname' }

注意:在使用tag标签调用tag列表时,需要确保已经正确配置了tag模块,并且设置了相应的tag分类和tag属性。

0