已为我提供了此帖子模板,可以尝试对这些帖子进行分页,我将如何实现这一目标?很抱歉,如果我天真地询问/解决这个问题。
我尝试按照WordPress指南进行操作,但它们似乎与我所获得的不匹配,因此我很难进行推断。
希望这一切都有道理,非常感谢。
<?php $the_query = new WP_Query( 'posts_per_page=5' ); ?>
<?php $postLoops = 0 ?>
<?php while ($the_query -> have_posts()) : $the_query -> the_post(); ?>
<?php $postLoops++;
if ($postLoops == 2) {
echo '<div class="post-right-half">';
}
if ($postLoops == 1) {
echo '<div class="post-left-half">';
}
?>
<div class="post-square">
<div class="post-thumbnail" style="background-image: url(<?php the_post_thumbnail_url(); ?>);"><br></div>
<div class="content-half">
<h2 class="post-title"><?php the_title(); ?></h2>
<p class="post-content"><?php the_excerpt(__('(more…)')); ?</p>
<a class="read-more" href="<?php the_permalink() ?>">Read More <i class="fa fa-angle-right" aria-hidden="true"></i></a>
</div>
</div>
<?php
if ($postLoops == 3) {
echo '</div>';
}
if ($postLoops == 1) {
echo '</div>';
}
?>
<?php
endwhile;
wp_reset_postdata();
?>
答案 0 :(得分:0)
您可以使用the_posts_pagination()
显示分页链接。
这是一个模板标记,因此可以显示分页(无需echo
结果)。
https://codex.wordpress.org/Function_Reference/the_posts_pagination
如果您希望先获得标记并在回显它之前对其进行处理,那么get_the_posts_pagination()
是您的朋友。
https://codex.wordpress.org/Function_Reference/get_the_posts_pagination
答案 1 :(得分:0)
所以我不知道这有多普遍,但是结合注释的文档链接和进一步的研究,这是我得出的解决方案:
前两行变为:
<?php $paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1; ?>
<?php $the_query = new WP_Query( array('posts_per_page' => 12,'paged' => $paged) ); ?>
<?php $postLoops = 0 ?>
这有点复杂,但是我想它的核心是我必须将查询设置转换成一个数组,其中包括上面定义的分页变量(不确定我是否完全理解这一点,但是我正在工作就可以了。
然后,在页面底部希望显示链接的地方,我放入了一个疯狂的数组,我们对其进行了修改以适合我们的需要,它看起来很复杂,但实际上仅包括您可能需要的所有设置,包括将上一个和下一个按钮设置为真棒按钮:
<?php
echo paginate_links( array(
'base' => str_replace( 999999999, '%#%', esc_url( get_pagenum_link( 999999999 ) ) ),
'total' => $the_query->max_num_pages,
'current' => max( 1, get_query_var( 'paged' ) ),
'format' => '?paged=%#%',
'show_all' => false,
'type' => 'plain',
'end_size' => 2,
'mid_size' => 1,
'prev_next' => true,
'prev_text' => sprintf( '<i></i> %1$s', __( '<i class="fa fa-angle-left" aria-hidden="true"></i>', 'text-domain' ) ),
'next_text' => sprintf( '%1$s <i></i>', __( '<i class="fa fa-angle-right" aria-hidden="true"></i>', 'text-domain' ) ),
'add_args' => false,
'add_fragment' => '',
) );
?>
我认为这就是一切,如果我对它有所了解,我将添加更多描述,但目前看来仍然有效。
非常感谢。