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’/}

 

这样就可以实现搜索结果页的搜索结果数量的单独调用了。