一文掌握织梦dede搜索 search调用实现

搜索框

<form action="{dede:global.cfg_cmsurl/}/plus/search.php" name="formsearch" method="get">
    <input type="hidden" name="kwtype" value="0" />
    <input type="text"  name="q" placeholder="请输入想搜索的关键字" onfocus="if(this.value=='请输入想搜索的关键字'){this.value=''}" onblur="if(this.value==''){this.value='请输入想搜索的关键字'}">
    开始时间:<input type="text" name="startdate" value="" /><br />
    结束时间:<input type="text" name="enddate" value="" /><br />
    <input type="submit" class="iconfont" value="" />
</form>

search模板

//标题
<p style="color:#26B7BC;">{dede:global name='keyword' function='RemoveXSS(@me)'/}_搜索结果</p>


//搜索列表
{dede:list titlelen='40' perpage='10'}
  <div class="getlist_lst ls">
    <a href="[field:arcurl /]">
      <div class="l1"><p>[field:typename /]</p></div>
      <div class="r1">
        <div class="l">
          <div class="zj_img">
            <p><img src="[field:litpic/]"><img class="hidden" src="[field:litpic/]"></p>
          </div>
        </div>
        <div class="text">
          <h2><i class="iconfont"></i>[field:title /]</h2>
          <p>[field:description function='cn_substr(Html2text("@me")."...",144)'/]</p>
        </div>
        <span class="c-showurl">[field:global.cfg_basehost/][field:arcurl /] [field:stime/]</span>
        <i class="iconfont r_i"></i>
      </div>
    </a><p class="fg"></p>
  </div>
{/dede:list}
<ul class="page_list">{dede:pagelist listitem="index,end,pre,next"listsize="2"/}</ul> 

搜索结果个数调用

打开 /include/arc.searchview.class.php 找到

else if($tagname=="field")

在它上面加入

else if($tagname=="itemcount")
{
    $this->dtp->Assign($tagid,$this->TotalResult);
}

调用 {dede:itemcount/}

<span class="support-text-top">为您找到相关结果{dede:itemcount/}个</span>

伪静态

#POST
rewrite ^/search(.*)$ /plus/search.php last;

#GET
rewrite ^/search/(.*)-([0-9]+)\.html$  /search.php?q=$1&PageNo=$2&pagesize=10&searchtype=title;
rewrite ^/search/(.*)\.html$  /search.php?q=$1&pagesize=10&searchtype=title;

分页样式修改,/include/arc.searchview.class.php 855行

//获得上一页和下一页的链接
if($this->PageNo != 1)
{
    $prepage.="<td width='50'><a href='".$purl."PageNo=$prepagenum'>上一页</a></td>\r\n";
    $indexpage="<td width='30'><a href='".$purl."PageNo=1'>首页</a></td>\r\n";
}
else
{
    $indexpage="<td width='30'>首页</td>\r\n";
}
if($this->PageNo!=$totalpage && $totalpage>1)
{
    $nextpage.="<td width='50'><a href='".$purl."PageNo=$nextpagenum'>下一页</a></td>\r\n";
    $endpage="<td width='30'><a href='".$purl."PageNo=$totalpage'>末页</a></td>\r\n";
}
else
{
    $endpage="<td width='30'>末页</td>\r\n";
}

猜你喜欢

转载自blog.csdn.net/weixin_53545232/article/details/117062330