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

在Dedecms文章页中我们经常会显示相关文章之类的文章列表,就需要使用{dede:likearticle}标签,但是默认的likearticle是不能显示自定义的附加字段的。

解决办法

打开 include/taglib/likearticle.lib.php 找到

1

 

if($keyword != '')

 

在它的上面加入

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

 

//获得附加表的相关信息

$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;

                }

            }

        }

    }

}

 

继续搜索

1

 

tp.sitepath

 

改成

1

 

tp.sitepath $addField

 

有2处,都要修改

继续搜索

1

 

arc.typeid=tp.id

 

改成

1

 

arc.typeid=tp.id $addJoin

 

有2处,都要需改

模板中调用自定义字段

1

2

3

4

 

{dede:likearticle row='10' col='' titlelen='100' infolen='200'}

<a href="[field:arcurl/]">[field:title/]</a>

<p>价格:¥[field:jiage/]</p>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/ade65676c3089a2ee85b5af7991e8b12.html