WordPress-自定义模板上的分页未显示(Lollum Framework-Lotusflower主题)

我一直在使用名为Lotusflower的wordpress主题。我创建了一个页面模板(复制粘贴了index.php), 并使用WP_Query来获取我希望在此页面上显示的帖子。但是, 内置分页功能的主题似乎在这里不起作用。你能解释为什么吗?

//Query for the posts < ?php /** * Lollum * * The main template file * * This is the most generic template file in a WordPress theme and one of the * two required files for a theme (the other being style.css). * It is used to display a page when nothing more specific matches a query. * For example, it puts together the home page when no home.php file exists. * * @package WordPress * @subpackage Lollum Themes * @author Lollum < support@lollum.com> * */ /* Template Name: What's New */ $postsPerPage = 3; $page = 1; $post_query = new WP_Query(array( 'post_status' => 'publish', 'orderby' => 'publish_date', 'order' => 'DESC', 'paged' => $page, 'posts_per_page' => $postsPerPage )); ?>

然后我像这样使用它来获取自定义页面模板上的最新帖子:
< ?php // START the loop ?> < ?php while ($post_query-> have_posts()) : $post_query-> the_post(); ?> < ?php #CUSTOM ADDITIONS : SHOW VIEWS echo wpb_get_post_views(get_the_ID()); ?> < ?php get_template_part('content/content', get_post_format()); ?> < ?php endwhile; ?> < ?php // END the loop ?> < ?php lollum_pagination(); ?> < ?php // lollum_pagination_default(); ?> < /div>

其中lollum_pagination()函数如下所示:
/** * Pagination */ if (!function_exists('lollum_pagination')) { function lollum_pagination($pages = '', $range = 2) { $showitems = ($range * 2)+1; global $paged; if(empty($paged)) $paged = 1; if($pages == '') { global $wp_query; $pages = $wp_query-> max_num_pages; if(!$pages) { $pages = 1; } } if(1 != $pages) { echo "< nav class='pagination'> "; echo "< h2 class='assistive-text'> " . __('Post navigation', 'lollum') . "< /h2> "; if($paged > 1 & & $showitems < $pages) echo "< a href='" . get_pagenum_link($paged - 1) . "'> & laquo; < /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> "; } } if ($paged < $pages & & $showitems < $pages) echo "< a href='" . get_pagenum_link($paged + 1) . "'> & raquo; < /a> "; echo "< /nav> \n"; } } }

我没有在这个功能上摆弄。我猜它不起作用, 因为我需要使用另一种方式来查询帖子?那是我的猜测。在我的index.php(我从中复制代码的地方)上, 完全相同的代码段可以完美地工作(我没有使用自定义数组, 因为它直接查询帖子)
提前致谢
#1【WordPress-自定义模板上的分页未显示(Lollum Framework-Lotusflower主题)】我通过执行以下操作使其工作:
  1. 将$ post_query的名称更改为$ wp_query(因为该函数使用此名称)
  2. 使用’ paged’ => get_query_var(‘ paged’ ), 而不是整数$ page。对于自定义查询, 你似乎需要使用查询var。
这解决了。

    推荐阅读