织梦模型添加自定义字段后,搜索页需要显示自定义的字段时,织梦默认是无法在搜索结果页显示自定义字段的内容的,网上其他教程都是修改核心文件,不方便,现在我们不修改任何核心文件来实现
打开 include/extend.func.php ,在最下面加入
function GetAddField($aid,$addField) { global $dsql; $row = $dsql->GetOne("SELECT c.addtable FROM dede_archives AS a LEFT JOIN dede_channeltype AS c ON a.channel=c.id where a.id='$aid'"); $addtable = trim($row['addtable']); $row = $dsql->GetOne("SELECT $addField FROM `$addtable` WHERE aid=$aid"); return $row["$addField"]; }
search.htm 搜索结果页模板自定义字段调用标签
[field:id function=GetAddField(@me,"自定义字段名")/]
如果不喜欢添加自定义方法,那就直接用runphp调用,不需要上面的函数,直接调用
[field:id runphp=yes]global $dsql;$row = $dsql->GetOne("SELECT c.addtable FROM dede_archives AS a LEFT JOIN dede_channeltype AS c ON a.channel=c.id where a.id=@me");$result = $dsql->GetOne("SELECT body FROM `$row[addtable]` WHERE aid=@me");@me = cn_substr(html2text($result['body']),500);[/field:id]
body 为自定义字段名,换成你自己的自定义字段。
织梦二次开发QQ群
本站客服QQ号:862782808(点击左边QQ号交流),群号(383578617) 如果您有任何织梦问题,请把问题发到群里,阁主将为您写解决教程!
转载请注明: 织梦模板 » 织梦搜索结果页调用任意模型任意自定义字段