• 全国400电话网上服务平台
    强大号码库资源任选,方便,快捷,快速开通。
    咨询热线:400-1100-266  

    dedecms织梦tag标签详解
    POST TIME:2020-03-31 15:20

     标签名称:tag

     功能说明:TAG调用标签

     适用范围:全局使用

     DEDECMS的tags调用的基本语法是:

      {dede:tag sort='new' getall='0'}

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

      {/dede:tag}

    参数说明:

      row='30' 调用条数,sort='new' ,排序方式 month,rand,week ,getall='0' 获取类型 0 为当前内容页TAG标记,1为获取全部TAG标记,底层模板字段,link和tag。

      但是我们知道dede默认在列表是无法调用tag标签的,是用全部还是当前页?显然全部的话和分类信息又有些不着调,如果用当前页的话,没有文章id,你也调不出东西来。难道这就没辙了吗?

      方法1:

      在列表需要的位置加入下列代码

    [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]

      方法2:

    在inc_functions.php文件里加入

    function listtag($aid){

      $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='$aid'");   $tsql->Execute('t');

      while($row = $tsql->GetArray('t',MYSQL_ASSOC)){

      $tags .= "<a href='/tag.php?/".urlencode($row['tagname'])。"'>".$row['tagname']."</a>";

      }

      return $tags;

      }   然后在列表页相应位置加入[field:ID function="listtag(@me)"/]标记。看了一下5.7版本的DedeCMs里面关于tag的调用,虽然也有typeid的参数了,但是你打开数据库看看就会发现,虽然dede_tagindex表里面也有了typeid的字段。但是默认值都是0.这样代码中的sql语句就没有任何作用了,反而家里typeid参数取不出数据来。

    
    关于我们 | 付款方式 | 建站知识 | 增值服务 | 网站模板
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信

    微信号已复制,请打开微信添加咨询详情!