名站网址导航为大驾家提供DedeCMS站点程序站点教程相关的知识,比如织梦程序安装教程,织梦程序系统故障等教程。
在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> {/dede:likearticle} |
关于DedeCMS站点程序站点教程相关的知识,就说到这里了希望能帮助朋友们。dedecms网站程序织梦程序dede:arclist按照自定义字段的条件具体调用相关文章