织梦dedecms — advancedsearch精确查询,根据自定义字段查询,查询结果页面无法调用自定义字段,头部,

阅读 次  ·  发布日期 2018-09-28 15:54  · 

(一)根据自定义字段,精确查询

 

后台 - 核心 - 内容模型管理

根据你添加字段的频道,点击右边红色框内按钮,进入

 

 

此地以 自定义字段 测试1 测试2 为例,然后粘贴到你需要搜索的模板中,样式自行调整

 

 

搜索后发现,系统I自带的页面非常丑,想用自己的模板怎么办?

找到plus/advancedsearch.php

找到末尾如下代码

if(file_exists(DEDEROOT."/templets/default/$template"))
{
    $templatefile = DEDEROOT."/templets/default/$template";
}
else
{
    $templatefile = DEDEROOT."/templets/default/advancedsearch.htm";

}

红色标注为系统默认模板路径,根据自己模板修改即可(备注:advancedsearch.htm 需要拷贝到自己模板下)

这就完成了,自定义字段精确查询

 

 

(二)头部,尾部标签无法识别! 无法设别channel 或者 channelartlist

解决方法如下

在advancedsearch.htm 头部标签 换成<?php pasterTempletDiy("default/head.htm");?> 

尾部标签 换成 <?php pasterTempletDiy("default/footer.htm");?>

 

 /include/extend.func.php最后边增加
 

		
  1.  
    function pasterTempletDiy($path)
  2.  
    {
  3.  
    require_once(DEDEINC."/arc.partview.class.php");
  4.  
    global $cfg_basedir,$cfg_templets_dir;
  5.  
    $tmpfile = $cfg_basedir.$cfg_templets_dir."/".$path;//模版文件的路径
  6.  
    $dtp = new PartView();
  7.  
    $dtp->SetTemplet($tmpfile);
  8.  
    $dtp->Display();
  9.  
    }
 
这样就搞定了
 
 
 
(三)在advancedsearch.htm 无法时调用自定义字段!解决方法如下
 
/plus/advancedsearch.php
 
找到如下代码:
 
if($mid < -1)     {         $where = str_replace('main.', 'addon.', $where);         $orderby = str_replace('main.', 'addon.', $orderby);         $query = "SELECT addon.*, arctype.* FROM $addontable addon          LEFT JOIN xhdsql_arctype arctype ON arctype.id = addon.typeid         $where $orderby";     } else {         $query = "SELECT main.id AS aid,main.*,main.description AS description1, type.*      FROM $maintable main      LEFT JOIN xhdsql_arctype type ON type.id = main.typeid      LEFT JOIN $addontable addon ON addon.aid = main.id      $where  $orderby";     }
红色部分改成 SELECT addon.*,

 

在模板中调用{dede:field.自定义字段/}即可


本站关键词:信宏达网络,信宏达科技,北京网站建设公司,北京网站建设,北京网站设计,北京企业网站建设,朝阳网站建设,海淀设计制作,西城网页设计,网站制作公司,北京高端网站建设,企业网站建设,北京建站,营销型网站建设,自适应网站制作,html5网站制作,上地做网站公司,西二旗网站建设,中关村网站建设,信宏达网络科技有限公司,北京信宏达网络科技有限公司