如何在织梦dedecms中实现列表页调用tag功能?
- 行业动态
- 2024-10-08
- 1
在织梦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属性。
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:http://www.xixizhuji.com/fuzhu/118647.html