SEO学堂 - 轻松学习SEO从此开始!

成都SEO优化教程  免费SEO视频教程

dedecms织梦搜索页分页样式的修改及搜索单页显示

时间:2018-09-16 14:46来源:seo 作者:SEO学堂 点击:
在使用DEDECMS建站过程中,发现搜索页分页方式竟然还是使用TABLE方式,而且不受CSS控制,本着方便调整及有利SEO的角度,很有必要把TABLETD的方式改成用ULLI控制的方式,这样我们能通过

在使用DEDECMS建站过程中,发现搜索页分页方式竟然还是使用<TABLE>方式,而且不受CSS控制,本着方便调整及有利SEO的角度,很有必要把<TABLE><TD>的方式改成用<UL><LI>控制的方式,这样我们能通过CSS自定义样式更方便融入不同的风格的模板中使用。

言归正传,下面教你怎么把DEDE搜索页的分页方式改成和列表页一样,通过LI控制

我们发现搜索模板里面的分页标签pagelist和普通的分页不一样,常见的分页控制代码是在include/arc.listview.class.php里面,而搜索页的分页是写在include/arc.searchview.class.php里面。因此需要修改这个文件。

打开

然后搜索 获取动态的分页列表

将获取动态的分页列表 一直到 //获得数字链接 之间的内容全部替换成下面代码

01 /**
02      *  获取动态的分页列表
03      *
04      * @access    public
05      * @param     string  $list_len  列表宽度
06      * @return    string
07      */
08     function GetPageListDM($list_len)
09     {
10         global $oldkeyword;
11         $prepage="";
12         $nextpage="";
13         $prepagenum = $this->PageNo - 1;
14         $nextpagenum = $this->PageNo + 1;
15         if($list_len=="" || preg_match("/[^0-9]/", $list_len))
16         {
17             $list_len=3;
18         }
19         $totalpage = ceil($this->TotalResult / $this->PageSize);
20         if($totalpage<=1 && $this->TotalResult>0)
21         {
22             return "共1页/".$this->TotalResult."条记录";
23         }
24         if($this->TotalResult == 0)
25         {
26             return "共0页/".$this->TotalResult."条记录";
27         }
28         $purl = $this->GetCurUrl();
29         
30         $oldkeyword = (empty($oldkeyword) ? $this->Keyword : $oldkeyword);
31         //当结果超过限制时,重设结果页数
32         if($this->TotalResult > $this->SearchMaxRc)
33         {
34             $totalpage = ceil($this->SearchMaxRc/$this->PageSize);
35         }
36         $infos = "<li>找到<b>".$this->TotalResult."</b>条记录/只显示<b>{$totalpage}</b>页 </li>\r\n";
37         $geturl = "keyword=".urlencode($oldkeyword)."&searchtype=".$this->SearchType;
38         $hidenform = "<input type='hidden' name='keyword' value='".rawurldecode($oldkeyword)."'>\r\n";
39         $geturl .= "&channeltype=".$this->ChannelType."&orderby=".$this->OrderBy;
40         $hidenform .= "<input type='hidden' name='channeltype' value='".$this->ChannelType."'>\r\n";
41         $hidenform .= "<input type='hidden' name='orderby' value='".$this->OrderBy."'>\r\n";
42         $geturl .= "&kwtype=".$this->KType."&pagesize=".$this->PageSize;
43         $hidenform .= "<input type='hidden' name='kwtype' value='".$this->KType."'>\r\n";
44         $hidenform .= "<input type='hidden' name='pagesize' value='".$this->PageSize."'>\r\n";
45         $geturl .= "&typeid=".$this->TypeID."&TotalResult=".$this->TotalResult."&";
46         $hidenform .= "<input type='hidden' name='typeid' value='".$this->TypeID."'>\r\n";
47         $hidenform .= "<input type='hidden' name='TotalResult' value='".$this->TotalResult."'>\r\n";
48         $purl .= "?".$geturl;
49         //获得上一页和下一页的链接
50         if($this->PageNo != 1)
51         {
52             $prepage.="<li><a href='".$purl."PageNo=$prepagenum'>上一页</a></li>\r\n";
53             $indexpage="<li><a href='".$purl."PageNo=1'>首页</a></li>\r\n";
54         }
55         else
56         {
57             $indexpage="<li>首页</li>\r\n";
58         }
59         if($this->PageNo!=$totalpage && $totalpage>1)
60         {
61             $nextpage.="<li><a href='".$purl."PageNo=$nextpagenum'>下一页</a></li>\r\n";
62             $endpage="<li><a href='".$purl."PageNo=$totalpage'>末页</a></li>\r\n";
63         }
64         else
65         {
66             $endpage="<li>末页</li>\r\n";
67         }
68         //获得数字链接

 

 

 

 

另外发现DEDECMS的搜索结果数量不受设置的 {dede:list perpage='10' titlelen=100}这里的perpage控制,也不受pagesize控制,不知道是个例还是都这样,我这里只能通过修改search.php中的

$ pagesize =(isset($pagesize)is_numeric($pagesize))?$pagesize:10; 

这里的10来实现数量控制

 
(责任编辑:SEO学堂)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
推荐内容