查看: 30|回覆: 0

[教程] 详解dedecms搜索页面单独调用搜索结果条数的实现方法

[複製鏈接]

2

主題

0

回帖

0

積分

热心网友

金币
0
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2011-2-2
發表於 2024-4-10 00:00:00 | 顯示全部樓層 |閲讀模式

DEDE的搜索结果数量都集成在了列表分页标签里,并没有使用单独的函数来提供这个结果数量,因此对有单独调用搜索结果数量的用户来说,就有使用问题,这里提供二次开发的方法。

非常简单只要修改几个地方就行了:

第一步,打开/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'/}

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部