快捷搜索:   nginx

dedecms使用SQL代码调用指定栏目tag标签

在使用织梦dedecms建站中,很有可能需要用到在首页根据调用某个栏目下的TAG,也就是是按栏目调出TAG,这里就需要用到DEDE 的SQL运行功能
{dede:sql sql="select * from dede_archives a left join dede_taglist t on a.id=t.aid where a.typeid='22' limit 4"}
   <a href='/tags.php?[field:tag/]' target="_blank" title="[field:tag /]">[field:tag /]</a>
{/dede:sql}

这里typeid=‘22’可以改成你实际要调用的栏目ID,limit 4这个是调用多少个TAG出来

以上的代码是随便哪里都可以用
如果是要再栏目页调用,还有一个代码
[field:id runphp=yes]  
    $tsql = new DedeSql(false);  
    $tags = '';  
    $tsql->SetQuery("Select i.tagname From dede_tag_list t left join dede_tag_index i on i.id=t.tid where t.aid='@me'");  
    $tsql->Execute('t');  
    while($row = $tsql->GetArray('t',MYSQL_ASSOC)){  
    $tags .= "<a href='/tag.php?/".urlencode($row['tagname'])."'>".$row['tagname']."</a>";  
    }  
    @me=$tags;  
    [/field:id]

如果是DEDE5.7 及之后的版本,可以直接在栏目页用
[field:id function=GetTags(@me)/] 
就能直接调用,但是调用出来是不带链接的,如果需要链接,请注释掉include\helpers\archive.helper.php文件的130行: $tags .= ($tags=='' ? $row['tag'] : ','.$row['tag']);
  用下面语句替换,当然你也可以加入自己的样式:$tags .= "<a href='/tags.php?/".urlencode($row['tag'])."/'>".$row['tag']."</a> ";
顶(1)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论