Dedecms 模板中心

您现在的位置: 首页 > 教程文档 > 安装使用 >

织梦dedecms 搜索页面单独调用搜索结果条数的实现方法

来源:未知 发布时间:2017-12-13热度:
织梦在搜索结果页面并没有构造单独的函数来实现调用结果数量,结果数都集成在列表分页标签里了,如果我们需要这个数量的单独调用,就要进行二次开发了。 其实很简单,教大家如何实现: 第一步,打开/include/arc.searchview.class.php文件,查找代码(大概在...

织梦在搜索结果页面并没有构造单独的函数来实现调用结果数量,结果数都集成在列表分页标签里了,如果我们需要这个数量的单独调用,就要进行二次开发了。
 
其实很简单,教大家如何实现:
 
第一步,打开/include/arc.searchview.class.php文件,查找代码(大概在第525行):
 
1 else if($tagname=="pagelist")
2 {
3         $list_len = trim($ctag->GetAtt("listsize"));
4         if($list_len=="")
5         {
6                 $list_len = 3;
7         }
8         $this->dtp->Assign($tagid,$this->GetPageListDM($list_len));
9 }
 
在下面添加代码:
 
1 else if($tagname=="itemcount")
2 {
3         $list_len = trim($ctag->GetAtt("listsize"));
4         if($list_len=="")
5         {
6                 $list_len = 3;
7         }
8         $this->dtp->Assign($tagid,$this->GetItemsCountDM($list_len));
9 }
第二步,查找代码(大概在第925行):
 
1 /**
2   * 获得当前的页面文件的url
3   *
4   * @access public
5   * @return string
6   */
 
在其上面添加下面的这段代码:
 
01 //————
02 //搜索输出总量
03 //————
04 function GetItemsCountDM($list_len)
05 {
06         global $oldkeyword;
07         $pagenow = ($this->PageNo-1) * 10 + 1;
08         $pagenows = $this->PageNo*10; //当结果超过限制时,重设结果页数
09         if($this->TotalResult > $this->SearchMaxRc)
10         {
11                 $totalpage = ceil($this->SearchMaxRc/$this->PageSize);
12         }
13         $plist .= $this->TotalResult;
14         return $plist;
15 }
 
第三步,在搜索结果页模板里要显示结果条数的地方通过如下标签调用:
 
1 {dede:itemcount listsize='4'/}
 
这样就可以实现搜索结果页的搜索结果数量的单独调用了。

    责任编辑:好织梦