你是不是越来越感觉网站打开速度慢了,网站速度慢和很多原因有关系,网站插件太多就是一个很重要的因素,但是你知道吗?有很多插件是非必须的哦,玩wordpress不是让我们能找到很多插件,而是看我们能舍弃多少插件,前段时间我侧地抛弃了all in one seo pack插件(小川博客SEO优化第一季)、高亮代码插件(抛弃WordPress代码高亮显示插件),现在让我们继续减负吧,今天我要抛弃分页插件,原因很简单:1、它是插件;2、会和query_posts函数出现冲突(什么是query_posts函数,请参看:query_posts函数技术篇)。
好了我要开始了,你记得跟上哦!
首先:打开你的主题文件funcetions.php文件,在 ?> 这个符号前面加上下面的一段代码:
- function kriesi_pagination($query_string){
- global $posts_per_page, $paged;
- $my_query = new WP_Query($query_string .“&posts_per_page=-1”);
- $total_posts = $my_query->post_count;
- if(emptyempty($paged))$paged = 1;
- $prev = $paged – 1;
- $next = $paged + 1;
- $range = 2; // only edit this if you want to show more page-links
- $showitems = ($range * 2)+1;
- $pages = ceil($total_posts/$posts_per_page);
- if(1 != $pages){
- echo “<div class=’pagination’>”;
- echo ($paged > 2 && $paged+$range+1 >
$pages && $showitems < $pages)? “<a href='”.get_pagenum_link(1).“‘>最前</a>”:“”; - echo ($paged > 1 && $showitems < $pages)? “<a href='”.get_pagenum_link($prev).“‘>上一页</a>”:“”;
- for ($i=1; $i <= $pages; $i++){
- if (1 != $pages &&( !($i >= $paged+$range+1 || $i <= $paged–$range-1) || $pages《》
<= $showitems )){ - echo ($paged == $i)? “<span class=’current’>”.$i.“</span>”:“<a href='”.get_pagenum_link($i).“‘ class=’inactive’ >”.$i.“</a>”;
- }
- }
- echo ($paged < $pages && $showitems < $pages) ? “<a href='”.get_pagenum_link($next).“‘>下一页</a>” :“”;
- echo ($paged < $pages-1 && $paged+$range-1 < $pages && $showitems < $pages) ? “<a href='”.get_pagenum_link($pages).“‘>最后</a>”:“”;
- echo “</div>\n”;
- }
- }
注意:粘贴后一定记得把functions.php文件的编码格式改为utf-8,不然中文会出现乱码的!操作完第一步,我们接着修改,不要怕麻烦,跟着做先.
第二步:修改调用标签;
之前我们用的是分页插件的调用代码,不如pagebar插件用到的是:
- <?php if (function_exists(‘wp_pagebar’)) wp_pagebar(); ?>
现在在你的首页(index.php)、分类目录(archive.php/category.php)、搜索(search.php)等页面找到上面的调用代码,替换成下面一句标签:
- <?php kriesi_pagination($query_string); ?>
OK,昨晚这一步,基本已经大功告成,但是为了让我们的分页更加美观,我们还需要对样式稍作修改,以下是修改的自己的分页样式,你可以直接复制放在你的style.css文件中,也可以对着修改下:
第三步:修改样式;
- .pagination{
- line-height:35px;
- background-color:#E1FFFF;
- }
- .wenzi{ color:#F0C; font-size:12px; float:left;margin: 2px 2px 5px 10px;}
- .pagination span, .pagination a{
- font-size:14px;
- margin: 2px 6px 2px 0;
- background:#fff;
- border:1px solid #ccc;
- color:#787878;
- padding:2px 10px 2px 10px;
- text-decoration:none;
- }
- .pagination a:hover{
- background: #8391A7;
- border:1px solid #fff;
- color:#fff;
- }
- .pagination .current{
- background:#74C6EA;
- border:1px solid #74C6EA;
- color:#393939;
- font-size:14px;
- padding:2px 5px 2px 5px;
- }
好了,具体可以看下小川SEO博客下方的分页效果,你做完这几步,你也能达到抛弃分页插件,让网站轻装上阵的效果哦!
还有,最后一步:
第四步:禁用分页插件,并删除!
评论(7)
小川老师:您好 我用过了 把调用代码放进去,样式全无 不知道什么情况
需要单独添加一些样式的。
调用的funcetions.php里面的内容总是下面这些代码提示错误 echo “”; $pages && $showitems < $pages)? "最前“:””;
echo ($paged > 1 && $showitems < $pages)? "上一页“:””; echo ($paged == $i)? “”.$i.””:”“.$i.”“;
} echo ($paged < $pages && $showitems < $pages) ? "下一页” :””;
echo ($paged < $pages-1 && $paged+$range-1 < $pages && $showitems < $pages) ? "最后“:””;
echo “\n”;
不行啊 !我的这些文件里面都找不到<?php if (function_exists(‘wp_pagebar’)) wp_pagebar(); ?> 这个代码
之前用的哪个分页插件,去掉那句调用即可。
有问题了!funcetions.php 文件的那个代码改成 utf-8 ?
好东西 马明 拿走了 呵呵 谢谢了!你忠实的粉丝