omiga

简单就好

SimplePageNavi页码bug

4条评论»

昨天发现SimplePageNavi的页码计算有误,我原本不到130篇日志,页码却显示到16。

查看SimplePageNavi源文件发现以下代码:

$postsnum = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->posts where post_status='draft'");

问题就在这里,查看WP的表结构发现这条查询条件有误。仅仅过滤掉了草稿,但是数据表中还存在post_status=inherit的数据项。所以将原代码做如下修改即可解决问题:

$postsnum = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->posts where post_type='post' and post_status='publish'");

(7月31日更新)

除了日志数量读取bug外,还确实在页码计算上存在一个bug。问题代码:

$pagenum=intval($postsnum/get_option('posts_per_page'));

解决办法:

$pagenum=ceil($postsnum/get_option('posts_per_page'));

评论(4)

Jerry(): #1回复

哎~不好意思不好意思,那个插件我自己都没怎么用过,纯属娱乐……

omiga(): #2回复

Jerry谦虚,很好用的插件~···

凯尔(): #3回复

现在你的PageNavi还有有些问题,15页没有内容。

发表评论

  • (必填)
  • (该信息不会公开)(必填)

全屏