首页 > 代码库 > 门户diy实现翻页功能的方法

门户diy实现翻页功能的方法

1、打开 \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均为此含义。

2、打开 \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);

3、打开 \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="http://www.mamicode.com/?page=‘.$i.‘" class="on">‘.$i.‘</a></li>‘;}else{$html.=‘<li><a href="http://www.mamicode.com/?page=‘.$i.‘">‘.$i.‘</a></li>‘;}}}else{for($i=$page-9;$i<$page;$i++){$html.=‘<li><a href="http://www.mamicode.com/?page=‘.$i.‘">‘.$i.‘</a></li>‘;}$html.=‘<li><a href="http://www.mamicode.com/?page=‘.$page.‘" class="on">‘.$page.‘</a></li>‘;for($i=$page+1;$i<$page+10;$i++){$html.=‘<li><a href="http://www.mamicode.com/?page=‘.$i.‘">‘.$i.‘</a></li>‘;}}$html .= "</ul></div>";echo $html;}

 

门户diy实现翻页功能的方法