码迷,mamicode.com
首页 > Web开发 > 详细

discuz 门户diy实现翻页功能的修改记录

时间:2015-08-13 20:31:36      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:功能 门户 discuz diy

第一步:找到文件:\source\class\block\portal\block_article.php

找到这个方法:function getdata($style, $parameter)

将其修改为:function getdata($style, $parameter, $bid)

在本文件再找到这样一段话:
$query = DB::query("SELECT at.*, ac.viewnum, ac.commentnum FROM ".DB::table(‘portal_article_title‘)." at LEFT JOIN ".DB::table(‘portal_article_count‘)." ac ON at.aid=ac.aid WHERE $wheresql$keyword ORDER BY $orderby LIMIT $startrow, $items");

在其上方加入:
//首页翻页修改
                if($bid==53){
                    $page = $_REQUEST[‘page‘]?$_REQUEST[‘page‘]:1;
                    $startrow = ($page-1)*$items;
                }

这里的bid为diy的记录id,查看方法可以通过firebug工具查看。此文中后面用到的bid均为此含义。


第二部,找到文件\source\function\function_block.php

定位到这里:
if($forceupdate) {
          block_updatecache($bid, true);
          $block = $_G[‘block‘][$bid];
     }

在其上方加入:

 //如果是首页最新文章,去掉缓存
    if ($bid == 53) {
        $forceupdate = 1;
    }

在本文件,在查找这样一句话:
$return = $obj->getdata($thestyle, $block[‘param‘]);

将其修改为:
$return = $obj->getdata($thestyle, $block[‘param‘],$bid);

第三步,找到文件:\source\function\function_core.php

定位到这个方法:function block_display($bid)

在其方法内的尾部加入:

//翻页更改
        if($bid==53){
            $page = $_REQUEST[‘page‘]?$_REQUEST[‘page‘]:1;
            $html = "<style>"
                    . ".page{padding:10px; float:left;}"
                    . ".page li{float:left; line-height:20px; padding:8px; font-size:16px;}"
                    . ".page li .on{color:#f57500; font-weight:800;}"
                    . "</style>";
            $html .= ‘<div class="page"><ul>‘;
            if($page<11){
                for($i=1;$i<21;$i++){
                    if($page == $i){
                        $html.=‘<li><a href="/?page=‘.$i.‘" class="on">‘.$i.‘</a></li>‘;
                    }else{
                        $html.=‘<li><a href="/?page=‘.$i.‘">‘.$i.‘</a></li>‘;
                    }
                }
            }else{
                for($i=$page-9;$i<$page;$i++){
                    $html.=‘<li><a href="/?page=‘.$i.‘">‘.$i.‘</a></li>‘;
                }
                $html.=‘<li><a href="/?page=‘.$page.‘" class="on">‘.$page.‘</a></li>‘;
                for($i=$page+1;$i<$page+10;$i++){
                    $html.=‘<li><a href="/?page=‘.$i.‘">‘.$i.‘</a></li>‘;
                }
            }
           $html .= "</ul></div>";
           echo $html;
        }


至此,修改完成,案例请查看:www.php2.cc

本文出自 “PHP二次开发” 博客,请务必保留此出处http://php2cc.blog.51cto.com/6143082/1684277

discuz 门户diy实现翻页功能的修改记录

标签:功能 门户 discuz diy

原文地址:http://php2cc.blog.51cto.com/6143082/1684277

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!