织梦dedecms完美实现likearticle调用新字段

92模板   2021-05-03   收藏本文

本文介绍了织梦dedecms完美实现likearticle调用新字段,解决思路:打开这个文件likearticle.lib.php,找到if($keyword != '')在上面添加教程给出的代码,然后使用{dede:likearticle row='10' col='' titlelen='100' infolen='200'}调用就可以了。

织梦网站源码

织梦dedecms完美实现likearticle调用新字段怎么实现?我们经常会在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}

这样就可以了。

以上就是关于织梦调用新字段的所有内容,希望可以帮到大家,欢迎扫码加微信一起交流~

微信公众号

TAG标签:织梦调用新字段
展开