dedecms更改内容模型,新添加的字段在搜索结果页不显示的问题

Dedecms织梦搜索页面调用自定义字段的方法。在做产品或者什么的时候,搜索页无法调用附加表的字段。所以就要改点地方了!操作如下:

问题:

dedecms更改内容模型,新添加的字段在搜索结果页不显示的问题。

标签值不显示

templets/search.htm

解答:

1、打开 include/extend.func.php 这个文件,在文件末尾添加如下代码:

/** 在搜索结果页显示新加字段值 2018.4.22 **/
/** 获取附加表(dede_addon_*)指定字段值 **/
function Search_addfields($id,$result){
global $dsql; // 数据库操作对象,全局对象,织梦已经初始化,可直接使用;
$record = $dsql->GetOne("SELECT * FROM `dede_addonarticle17` where aid='$id'");
$name=$record[$result];
return $name;
}

注:其中dede_addonarticle17是要调用自定义字段的附加表,在织梦后台核心->频道模型->内容模型管理可以看到,这个需要根据具体的情况来更改,其他的不用修改。`dede_addonarticle17`,此表名两边的符号不是单引号!最好复制!

2、然后打开 include/arc.searchview.class.php 这个文件,搜索“ //处理一些特殊字段”,在下面添加如下代码:

/** 2018年4月22日添加 start **/
$row["address"]=Search_addfields($row["id"],"address");
$row["quota"]=Search_addfields($row["id"],"quota");
$row["service"]=Search_addfields($row["id"],"service");
/** 2018年4月22日添加 end **/

其中address是我需要搜索页面显示的自定义字段的名称,如果有多个自定义字段,这就添加多行,但是一定要把address修改下。 最后一步就是在search.htm中 使用[field:address/] 就可以调用出来了,其中address是自定义的字段名。

如果你的数据表前缀不是dede_,适当调整dede_addonarticle里的”dede_”。

推荐阅读

  1. 织梦(DedeCMS)后台打开空白怎么解决?
  2. 网站从二级目录移到一级目录,批量修改图片路径的问题。织梦系统(DedeCMS)
  3. 如何在百度搜索结果中出现缩略图?
  4. 百度搜索结果标题下面的描述抓的是description么?
  5. 织梦dedecms微信公众平台插件代码
  6. DEDECMS:模板文件不存在,无法解析文档!
  7. 织梦系统(dedecms)提交表单后返回到提交页面
  8. 在织梦系统(dedecms)的表单功能里添加一个当前日期

发表评论

电子邮件地址不会被公开。 必填项已用*标注