dedecms的搜索结果页面调用自定义字段

 有时候在我们需要在dedecms的搜索结果页面调用自定义字段,但是我们发现在搜索结果页模板中使用“[field:字段名]”标签无法正确调用,就算添加了列表附加字段也不行。

这里,如何在搜索结果页调用自定义字段,具体方法及步骤如下:
找到并打开include目录下的extend.func.php文件,在文件末尾添加如下代码:
 
function Search_addfields($id,$result){
global $dsql; 
$dedejs = $dsql->GetOne("SELECT * FROM `dede_addonsoft` where aid='$id'");
$name=$dedejs[$result];
return $name;
}
其中addosoft是要调用自定义字段的附加表,在织梦后台核心->频道模型->内容模型管理可以看到,软件模型一般是addonsoft,普通文章一般是 addonarticle,这个根据具体的需要来更改,其他的不用修改。
 
接下来找到并打开 include目录下的arc.searchview.class.php文件,搜索“ //处理一些特殊字段”,在下面添加如下代码:
 
$row["softsize"]=Search_addfields($row["id"],"softsize");
 
其中的softsize是软件大小的字段名,如果有多个自定义字段则添加多行,但是一定要把softsize修改成字段名。添加之后就完成了,最后一步就是在搜索模板也调用了,在search.htm中 使用[field:softsize/]标签 就可以调用出来软件大小了。