蓝莓博客

  • 今天是

织梦DedeCMS搜索页调用搜索结果条数的实现方法

摘要:织梦的搜索结果数量都集成在了列表分页标签里,并没有使用单独的函数来提供这个结果数量,因此对有单独调用搜索结果数量的用户来说,就有使用问题,这里提供二次开发的方法。......
分享到:
织梦的搜索结果数量都集成在了列表分页标签里,并没有使用单独的函数来提供这个结果数量,因此对有单独调用搜索结果数量的用户来说,就有使用问题,这里提供二次开发的方法。  
DedeCMS搜索页调用搜索结果条数的实现方法  
非常简单只要修改几个地方就行了:  
第一步,打开/include/arc.searchview.class.php文件,查找代码(大概在第525行):  
 
else if($tagname=="pagelist") {  
 
 
 
 
 
 
 
$list_len = trim($ctag->GetAtt("listsize"));
 
 
 
 
 
 
 
 
if($list_len=="")
 
 
 
 
 
 
 
 
{
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
$list_len = 3;
 
 
 
 
 
 
 
 
}
 
 
 
 
 
 
 
 
$this->dtp->Assign($tagid,$this->GetPageListDM($list_len));
}  
在下面添加代码:  
 
else if($tagname=="itemcount") {  
 
 
 
 
 
 
 
$list_len = trim($ctag->GetAtt("listsize"));
 
 
 
 
 
 
 
 
if($list_len=="")
 
 
 
 
 
 
 
 
{
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
$list_len = 3;
 
 
 
 
 
 
 
 
}
 
 
 
 
 
 
 
 
$this->dtp->Assign($tagid,$this->GetItemsCountDM($list_len));
}  
第二步,查找代码(大概在第925行):  
 
/** * 获得当前的页面文件的url * * @access public * @return string */  
在其上面添加下面的这段代码:  
 
function GetItemsCountDM($list_len) {  
 
 
 
 
 
 
 
global $oldkeyword;
 
 
 
 
 
 
 
 
$pagenow = ($this->PageNo-1) * 10 + 1;
 
 
 
 
 
 
 
 
$pagenows = $this->PageNo*10;//当结果超过限制时,重设结果页数
 
 
 
 
 
 
 
 
if($this->TotalResult > $this->SearchMaxRc)
 
 
 
 
 
 
 
 
{
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
$totalpage = ceil($this->SearchMaxRc/$this->PageSize);
 
 
 
 
 
 
 
 
}
 
 
 
 
 
 
 
 
$plist .= $this->TotalResult;
 
 
 
 
 
 
 
 
return $plist;
}  
第三步,在搜索结果页织梦模板里要显示结果条数的地方通过如下标签调用:  
 
{dede:itemcount listsize='4'/}  
这样就可以实现搜索结果页的搜索结果数量的单独调用了。
 

来源于蓝莓原文地址: http://www.xiyi88.cn/xq/dede_1080.html