WordPress的定制wp_pagenavi不自定义页面上自定义查询工作
问题描述:
我试图做一些自定义的页面,我没有使用wp_pagenavi插件,但与我的自定义页面自定义功能,现在它仅适用于网页的index.php但前几天我添加了更多的查询元素之前工作正常。WordPress的定制wp_pagenavi不自定义页面上自定义查询工作
//custom pagepavi function
function my_pagenavi($the_query = false){
global $wp_query;
$query = ($the_query) ? $the_query : $wp_query;
$max = $query->max_num_pages;
$current_page = max(1, get_query_var('paged'));
$big = 999999999;
if ($max > 1) {
echo "<div class='pagination' style='height:auto'>";
echo paginate_links(array(
'base' => str_replace($big, '%#%', esc_url(get_pagenum_link($big))),
'format' => '?paged=%#%',
'current' => $current_page,
'show_all' => false,
'total' => $max,
'type' => 'list',
'prev_text' => __('PREV','dnp_theme'),
'next_text' => __('NEXT','dnp_theme'),
));
echo "</div>";
}
}
现在,这里是从我的模板页面循环。
//some query stuff
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$query = 'offset=0&paged='.$paged;
$blogs = new WP_Query($query);
if ($blogs->have_posts()) : ?>
<?php /* Start the Loop */ ?>
<?php while ($blogs->have_posts()) : $blogs->the_post(); ?>
<?php get_template_part('content', get_post_format()); ?>
<?php endwhile; ?>
<?php my_pagenavi(array('query' => $blogs)); ?>
<?php endif; ?>
为什么不加载任何东西?到底是怎么回事??
答
后ENDWHILE编写代码
全球$ wp_query;
$大= 999999999; //需要一个不太可能的整数
回波paginate_links(阵列(
'base' => str_replace($big, '%#%', esc_url(get_pagenum_link($big))),
'format' => '?paged=%#%',
'current' => max(1, get_query_var('paged')),
'total' => $wp_query->max_num_pages
));
答
查询是不正确的,这就是为什么它不工作,至少它不是,不是我有它工作正常:)
代替
$blogs = new WP_Query($query);
,所有这应该是
$blogs = query_posts('post_type=post&posts_per_page=4&paged='.get_query_var('paged'));
循环,就像任何其他的和完美的作品
if (have_posts()) : ?>
<?php /* Start the Loop */ ?>
<?php while (have_posts()) : the_post(); ?>
<?php get_template_part('content', get_post_format()); ?>
<?php endwhile; ?>
<?php my_pagenavi(); ?>
<?php endif; ?>