相信好多人都对phpcms的上一页下一页显示样式不是很满意(不是phpcms不好,是审美观念的不同啦)。我在做模板时也遇到了这个问题,想修改一下。在论坛搜索了半天找不到答案,还有网友包括版主说是加密过的, 无法修改。

于是研究了一下。发现很简单,现在给出大家方法:

 

大家都知道内容页里显示分页的地方插入的是{$pages}这个标签,但是{$pages}是由哪里控制样式的呢?

我找了找,是这个文件。\module\article\include文件夹的global.func.php文件。

从第三行开始的

 

function articlepage($catid, $ishtml, $urlruleid, $htmldir = '', $prefix = '', $itemid, $addtime, $pagenumber = 1, $page = 1)

{ $pages = '';

for($i=1; $i<=$pagenumber; $i++)

{

  $pages .= $page==$i ? '<strong>['.$i.']</strong> ' : '[<a href="'.linkurl(item_url('url', $catid, $ishtml, $urlruleid, $htmldir, $prefix, $itemid, $addtime, $i)).'">'.$i.'</a>] ';       

}

$prepageurl = $page<=1 ? linkurl(item_url('url', $catid, $ishtml, $urlruleid, $htmldir, $prefix, $itemid, $addtime, 1)) : linkurl(item_url('url', $catid, $ishtml, $urlruleid, $htmldir, $prefix, $itemid, $addtime, $page-1));

$nextpageurl = $page>=$pagenumber ? linkurl(item_url('url', $catid, $ishtml, $urlruleid, $htmldir, $prefix, $itemid, $addtime, $pagenumber)) : linkurl(item_url('url', $catid, $ishtml, $urlruleid, $htmldir, $prefix, $itemid, $addtime, $page+1));

return "<a href=\"".$prepageurl."\"><img src=\"".PHPCMS_PATH."images/page_pre.gif\" align=\"absmiddle\" border=\"0\" /></a> ".$pages." <a href=\"".$nextpageurl."\"><img src=\"".PHPCMS_PATH."images/page_next.gif\" align=\"absmiddle\" border=\"0\" /></a>";

}


 

都是控制这个样式的。相信大家都看出来了吧。

<strong>['.$i.']</strong>这里是控制的当前分页

 

[<a href="'.linkurl(item_url('url', $catid, $ishtml, $urlruleid, $htmldir, $prefix, $itemid, $addtime, $i)).'">'.$i.'</a>] 是控制的其他分页及链接。

 

"<a href=\"".$prepageurl."\"><img src=\"".PHPCMS_PATH."images/page_pre.gif\" align=\"absmiddle\" border=\"0\" /></a> ".$pages." <a href=\"".$nextpageurl."\"><img src=\"".PHPCMS_PATH."images/page_next.gif\" align=\"absmiddle\" border=\"0\" /></a>是前后两个图片。

 

既然研究明白了现在就开始修改,我们以这个图片为例子:

 

相信大家都看过这种分页显示样式把,我比较喜欢这种,比较大方。我们就以这个为例子。

 

首先,在你的css样式里加入这几个样式

a.pages:link,a.pages:visited{

  font-size:12px;

  padding:3px 8px;

  color:#686868;

  border:#cccccc 1px solid;

  text-decoration:none;

  }

a.pages:hover,a.pages:active{

  font-size:12px;

  padding:3px 8px;

  color:#686868;

  background:#E2E2E2;

  border:#cccccc 1px solid;

  } 

.pagesnow{

font-size:12px;

padding:3px 8px;

color:#FF0000;

border:#cccccc 1px solid;

}


然后把global.func.php文件里第三到第十行(也就是我上面说的代码)改成

 

function articlepage($catid, $ishtml, $urlruleid, $htmldir = '', $prefix = '', $itemid, $addtime, $pagenumber = 1, $page = 1)

{ $pages = '';

for($i=1; $i<=$pagenumber; $i++)

{

  $pages .= $page==$i ? '<span class="pagesnow">'.$i.'</span> ' : '<a href="'.linkurl(item_url('url', $catid, $ishtml, $urlruleid, $htmldir, $prefix, $itemid, $addtime, $i)).'" class="pages">'.$i.'</a> ';       

}

$prepageurl = $page<=1 ? linkurl(item_url('url', $catid, $ishtml, $urlruleid, $htmldir, $prefix, $itemid, $addtime, 1)) : linkurl(item_url('url', $catid, $ishtml, $urlruleid, $htmldir, $prefix, $itemid, $addtime, $page-1));

$nextpageurl = $page>=$pagenumber ? linkurl(item_url('url', $catid, $ishtml, $urlruleid, $htmldir, $prefix, $itemid, $addtime, $pagenumber)) : linkurl(item_url('url', $catid, $ishtml, $urlruleid, $htmldir, $prefix, $itemid, $addtime, $page+1));

return "<a href=\"".$prepageurl."\" class=\"pages\">上一页</a> ".$pages." <a href=\"".$nextpageurl."\" class=\"pages\">下一页</a>";

}

 

然后保存,剩下的就是重新生成一下你的页面。