在我的页面上,我有一个查询,该查询检索带有特定参数的帖子,并且我在分页的情况下每页显示一篇帖子。我已经知道了如何获取查询找到的帖子总数。我想添加一些导航,基本上说“你正在查看25篇文章中的‘n’”,并且随着用户点击“下一篇文章/上一篇文章”链接,“n”会增加或减少。
是否已经为此设置了功能?
以下是我的查询以及如何将其输出到页面:
<?php
$display_count = 1;
$page = get_query_var(\'paged\') ? get_query_var(\'paged\') : 1;
$offset = ($page -1)*$display_count;
$query_args = array(
\'post_type\' => \'post\',
\'orderBy\' => \'date\',
\'order\' => \'desc\',
\'number\' => $display_count,
\'posts_per_page\' => 1,
\'page\' => $page,
\'offset\' => $offset
);
?>
<article id="portfolio_item">
<?php $portfolio = new WP_Query($query_args); ?>
<!-- Total number of posts -->
<p> <?php echo "There are ".$portfolio->found_posts." Planning Projects"; ?></p>
<!-- Pagination Links -->
<p>
<?php previous_posts_link( \'<< Previous Posts | \', $portfolio->max_num_pages ); ?>
<?php next_posts_link( \'Next Posts >>\', $portfolio->max_num_pages ); ?>
</p>
<?php if( $portfolio->have_posts() ) : while( $portfolio->have_posts()) : $portfolio->the_post(); ?>
<h2><?php the_title() ?><span id="project_location"> <?php echo get_post_meta($post->ID, \'project_location\', true) ?></span> <span id="project_class">{ <?php echo get_post_meta($post->ID, \'project_services\', true) ?> }</span></h2>
<?php the_content() ?>
<?php endwhile; endif; ?>
<?php wp_reset_query(); ?>
</article>
</section>
最合适的回答,由SO网友:fuxia 整理而成
您手头已经有了所有必要的变量:$page
是当前页码,并且$portfolio->found_posts
职位总数。
两者都应该是整数,但为了确保代码的可翻译性,我会使用如下代码:
$current = sprintf(
_x(
\'Page %1$d of %2$d.\', // default string
\'1 = current page, 2 = total pages\', // context information for translators
\'your_text_domain\'
)
);
echo \'<p>\' . esc_html( $current ) . \'</p>\';
因此,即使翻译器注入一些HTML,也不会发生任何危险。