• 织梦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调用自定义字段标签写法

    {dede:likearticle row='10' col='' titlelen='100' infolen='200'}
    <a href="[field:arcurl/]">[field:title/]</a>
    <p>价格:¥[field:jiage/]</p>
    {/dede:likearticle}
  • 相关阅读:
    关于事务
    jquery弹出框
    ??(怕忘记 特此记录)
    .net事务
    揭开iphone4 4S 5 之间的内幕!这次你们该相信了吧!
    net得到当前时间
    aspnet ajax2.0下载安装包 msi
    jquery css 逐渐增加div的大小
    DataTable转换为Json对象
    安装EntityFramework
  • 原文地址:https://www.cnblogs.com/dedehtml/p/9901266.html
Copyright © 2020-2023  润新知