13-01
25

DEDE列表页调用当前文章内TAG标签的方法

第一种,封装方法

先打开DEDECMS根目录 include/common.func.php

找到在最底部 ?> 前面加入以下代码:

    function listtag($aid)   {        
    $tsql = new DedeSql(false);        
    $tags = '';        
    $tsql->SetQuery("Select i.tag From dede_taglist t left join dede_tagindex i on i.id=t.tid where t.aid='$aid'");        
    $tsql->Execute('t');        
    while($row = $tsql->GetArray('t',MYSQL_ASSOC)){          
    $tags .= "<a href='/tags.php?/".urlencode($row['tag'])."/'>".$row['tag']."</a> ";        
    }        
    return $tags;    
    }  

2.然后在文章页可以使用

    {dede:field.id function=”listtag(@me)”/}

来调用TAG标签,在列表页可以使用

    [field:id function="listtag(@me)"/]

ok,你已经成功通过以上方法,成功解决dede列表页调用文章tag标签。DEDE列表调用TAG标签



这个方法也是需要做表名修改,如果你不是默认安装,请修改为正确的数据库名。


第二种,页面添加
[field:id runphp=yes]
$tsql = new DedeSql(false);
$tsql->SetQuery("Select t.tag From dede_taglist t where t.aid='@me'");
$tsql->Execute('t');
while($row = $tsql->GetArray('t',MYSQL_ASSOC)){
$tag .= "<a href='/tags.php?/".urlencode($row['tag'])."'>".$row['tag']."</a>";}
@me=$tag;[/field:id]


第三种,修改源文件
[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> ";  


[本日志由 admin 于 2013-01-25 05:50 PM 编辑]
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
相关日志:
评论: 0 | 引用: 0 | 查看次数: 334
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭