dede分页样式修改(支持bootstrap分页样式)
来源:互联网 发布:ff14人男大叔捏脸数据 编辑:程序博客网 时间:2024/05/15 23:48
bootstrap的分页样式十分美观,但是调用dede分页生成的样式却十分糟糕
{dede:pagelist listitem="info,index,end,pre,next,pageno,option" listsize="3"/}
因此我产生了让dede的分页变成bootstrap的想法
修改方法如下:
进入include/arc.listview.class.php找到如下两个函数:
获取静态的分页列表:function GetPageListST($list_len,$listitem="index,end,pre,next,pageno")
获取动态的分页列表:function GetPageListDM($list_len,$listitem="index,end,pre,next,pageno")
里面有着如何输出分页HTML内容的代码,找到它们。
然后模仿bootstrap的分页html来改动它们:
<ul class="pagination"> <li class="disabled"><a href="#">«</a></li> <li class="active"><a href="#">1</a></li> <li><a href="#">2</a></li> <li><a href="#">3</a></li> <li><a href="#">4</a></li> <li><a href="#">5</a></li> <li><a href="#">»</a></li></ul>你需要输出一个
<ul class="pagination"><span style="font-family: Arial, Helvetica, sans-serif;"></ul></span>然后在其内部输出
<li><a href="#">页码</a></li>
这是我改动后的函数,需要的可以复制
/** * 获取静态的分页列表 * * @access public * @param string $list_len 列表宽度 * @param string $list_len 列表样式 * @return string */ function GetPageListST($list_len,$listitem="index,end,pre,next,pageno") { $prepage = $nextpage = ''; $prepagenum = $this->PageNo-1; $nextpagenum = $this->PageNo+1; if($list_len=='' || preg_match("/[^0-9]/", $list_len)) { $list_len=3; } $totalpage = ceil($this->TotalResult/$this->PageSize); if($totalpage<=1 && $this->TotalResult>0) { return "<li><span class=\"disabled\">共 <strong>1</strong>页<strong>".$this->TotalResult."</strong>条记录</span></li>\r\n"; } if($this->TotalResult == 0) { return "<li><span class=\"disabled\">共 <strong>0</strong>页<strong>".$this->TotalResult."</strong>条记录</span></li>\r\n"; } $purl = $this->GetCurUrl(); $maininfo = "<li><span class=\"disabled\">共 <strong>{$totalpage}</strong>页<strong>".$this->TotalResult."</strong>条</span></li>\r\n"; $tnamerule = $this->GetMakeFileRule($this->Fields['id'],"list",$this->Fields['typedir'],$this->Fields['defaultname'],$this->Fields['namerule2']); $tnamerule = preg_replace("/^(.*)\//", '', $tnamerule); //获得上一页和主页的链接 if($this->PageNo != 1) { $prepage.="<li><a href='".str_replace("{page}",$prepagenum,$tnamerule)."'>上一页</a></li>\r\n"; $indexpage="<li><a href='".str_replace("{page}",1,$tnamerule)."'>首页</a></li>\r\n"; } else { $indexpage="<li><a>首页</a></li>\r\n"; } //下一页,未页的链接 if($this->PageNo!=$totalpage && $totalpage>1) { $nextpage.="<li><a href='".str_replace("{page}",$nextpagenum,$tnamerule)."'>下一页</a></li>\r\n"; $endpage="<li><a href='".str_replace("{page}",$totalpage,$tnamerule)."'>末页</a></li>\r\n"; } else { $endpage="<li><a>末页</a></li>\r\n"; } //option链接 $optionlist = ''; $optionlen = strlen($totalpage); $optionlen = $optionlen*12 + 18; if($optionlen < 36) $optionlen = 36; if($optionlen > 100) $optionlen = 100; $optionlist = "<li><a>跳转至<select name='sldd' style='width:{$optionlen}px' onchange='location.href=this.options[this.selectedIndex].value;' >\r\n"; for($mjj=1;$mjj<=$totalpage;$mjj++) { if($mjj==$this->PageNo) { $optionlist .= "<option value='".str_replace("{page}",$mjj,$tnamerule)."' selected>$mjj</option>\r\n"; } else { $optionlist .= "<option value='".str_replace("{page}",$mjj,$tnamerule)."'>$mjj</option>\r\n"; } } $optionlist .= "</select>页</a></li>\r\n"; //获得数字链接 $listdd=""; $total_list = $list_len * 2 + 1; if($this->PageNo >= $total_list) { $j = $this->PageNo-$list_len; $total_list = $this->PageNo+$list_len; if($total_list>$totalpage) { $total_list=$totalpage; } } else { $j=1; if($total_list>$totalpage) { $total_list=$totalpage; } } for($j;$j<=$total_list;$j++) { if($j==$this->PageNo) { $listdd.= "<li class=\"active\"><a>$j</a></li>\r\n"; } else { $listdd.="<li><a href='".str_replace("{page}",$j,$tnamerule)."'>".$j."</a></li>\r\n"; } } $plist = ''; if(preg_match('/index/i', $listitem)) $plist .= $indexpage; if(preg_match('/pre/i', $listitem)) $plist .= $prepage; if(preg_match('/pageno/i', $listitem)) $plist .= $listdd; if(preg_match('/next/i', $listitem)) $plist .= $nextpage; if(preg_match('/end/i', $listitem)) $plist .= $endpage; if(preg_match('/option/i', $listitem)) $plist .= $optionlist; if(preg_match('/info/i', $listitem)) $plist .= $maininfo; return $plist; }
0 0
- dede分页样式修改(支持bootstrap分页样式)
- 修改DeDe标签Pagelist分页样式,自定义分页样式
- {dede:pagebreak/} 文章分页样式的修改
- dede分页列表样式修改方法
- DEDE-CMS 分页样式
- DEDE分页样式
- dede分页自定义样式
- dede自定义分页样式
- DeDe分页样式,自定义分页样式
- bootstrap分页样式
- CI 分页 bootstrap样式
- 如何修改DeDe标签Pagelist分页样式详解
- thinkphp 分页 修改分页样式
- dedecms 分页样式修改
- phpcms分页样式修改
- PHP分页样式修改
- 修改 thinkphp5 分页样式
- Yii 分页CLinkPager使用Bootstrap样式分页
- codeforces 24A Ring road (dfs)
- 【linux命令解析】【nohup &】
- Hiking Trip(bfs+优先队列)
- LINUX系统监控常用命令
- Hibernate入门篇(三)——编写第一个Hibernate例子
- dede分页样式修改(支持bootstrap分页样式)
- ArcGIS桌面软件不能打开的解决办法
- java和ajax实现带文件的form提交
- CSS 设置按钮,文本输入框
- make参数详解
- 六月二十三
- 建立使用Cas进行单点登录的应用
- 理解RESTful架构(原作者阮一峰)
- 避免放大器电路设计中的常见问题