加入收藏 | 设为首页 | 会员中心 | 我要投稿 梧州站长网 (https://www.0774zz.cn/)- 云原生、分布式云、媒体处理、业务安全、数据可视化!
当前位置: 首页 > 教程 > 正文

dedecms织梦相关文章标签likearticle调用自定义字段

发布时间:2022-09-05 10:20:56 所属栏目:教程 来源:互联网
导读:在Dedecms文章页中我们经常会显示相关文章之类的文章列表,就需要使用{dede:likearticle}标签,但是默认的likearticle是不能显示自定义的附加字段的。 解决办法 打开 include/taglib/likearticle.lib.php 找到 if($keyword != ) 在它的上面加入 //获得附加表
  在Dedecms文章页中我们经常会显示相关文章之类的文章列表,就需要使用{dede:likearticle}标签,但是默认的likearticle是不能显示自定义的附加字段的。
  解决办法
  打开 include/taglib/likearticle.lib.php 找到
  if($keyword != '')
 
  在它的上面加入   
  //获得附加表的相关信息
  $addField = "";
  $addJoin = "";
  if(is_object($refObj->ChannelUnit))
  {
      $addtable  = $refObj->ChannelUnit->ChannelInfos['addtable'];
      if($addtable!="")
      {
          $addJoin = " LEFT JOIN $addtable ON arc.id = ".$addtable.".aid ";
          $addField = "";
          $fields = explode(",",$refObj->ChannelUnit->ChannelInfos['listfields']);
          foreach($fields as $k=>$v)
          {
              $nfields[$v] = $k;
          }
          foreach($refObj->ChannelUnit->ChannelFields as $k=>$arr)
          {
              if(isset($nfields[$k]))
              {
                  if(!empty($arr['rename']))
                  {
                      $addField .= ",".$addtable.".".$k." as ".$arr['rename'];
                  }
                  else
                  {
                      $addField .= ",".$addtable.".".$k;
                  }
              }
          }
      }
  }
 
  继续搜索   
  tp.sitepath
  改成   
  tp.sitepath $addField
  有2处,都要修改
  继续搜索   
  arc.typeid=tp.id
  改成
  arc.typeid=tp.id $addJoin
  有2处,都要需改
  模板中调用自定义字段   
  {dede:likearticle row='10' col='' titlelen='100' infolen='200'}
  <a href="[field:arcurl/]">[field:title/]</a>
  <p>价格:¥[field:jiage/]</p>
  {/dede:likearticle}
 

(编辑:梧州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读