织梦搜索结果页调用自定义字段内容

Posted dedevip

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了织梦搜索结果页调用自定义字段内容相关的知识,希望对你有一定的参考价值。

我们在给模型添加自定义字段后,刚好搜索页需要显示自定义的字段时,织梦默认是无法在搜索结果页显示自定义字段的内容的,网上很多教程都是写死或者改动系统文件,这样不仅不够人性化,而且改动系统文件对升级存在影响。本文章介绍个完美的方法,既不改动系统核心文件,又不写死任何东西。

打开 include/extend.func.php ,在最下面加入

function GetAddField($aid,$addField)
{
	global $dsql;
    $row = $dsql->GetOne("SELECT c.addtable FROM #@_archives AS a LEFT JOIN #@_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 #@_archives AS a LEFT JOIN #@_channeltype AS c ON a.channel=c.id where [email protected]");$result = $dsql->GetOne("SELECT body FROM `$row[addtable]` WHERE [email protected]");@me = cn_substr(html2text($result[‘body‘]),500);[/field:id]

body 为自定义字段名,换成你自己的自定义字段。

以上是关于织梦搜索结果页调用自定义字段内容的主要内容,如果未能解决你的问题,请参考以下文章

织梦CMS如何在自定义表单页调用arclist标签啊,怎么在自定义表单页调用无效!

织梦首页dede:arclist和列表页dede:list调用自定义字段

DedeCMS搜索结果页面调用自定义字段的方法

织梦cms如何实现自定义表单字段的查询

织梦CMS自定义标签在哪设置?网站模板自己做的,以前用过科讯CMS,不了解织梦,想知道怎么自己定义

dedecms搜索模板,使用{dede:list}标签调用自定义字段不显示(空白)