如何获得帖子并为Wordpress添加帖子导航链接



最近,我在Wordpress中使用PHP制作了一个自定义页面。我试着用特定的标签过滤所有的帖子。以下是我获取帖子并将其插入div的PHP代码:

<div class="container">
<div class="row box">
<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'tag' => 'artikelseriesomb2020',
'posts_per_page' => 10,
'paged' => $paged,
);
$arr_posts = new WP_Query($args);
if ($arr_posts->have_posts()) :
while ($arr_posts->have_posts()) :
$arr_posts->the_post();
$url = wp_get_attachment_url(get_post_thumbnail_id($arr_post->ID), 'large');
?>
<div class="col-mt-4" style="padding:10px;">
<div class="card" style="width: 18rem;">
<img class="card-img-top" data-no-lazy="1" src="<?php echo $url; ?>" alt="Card image cap">
<div class="card-body">
<h5 class="card-title"><?php the_title(); ?></h5>
<p class="card-text"><?php the_excerpt(); ?></p>
<a href="<?php the_permalink(); ?>" class="btn btn-primary">BACA SELENGKAPNYA</a>
</div>
</div>
</div>
<?php
endwhile;
endif;
?>
</div>
</div>

我想每页显示10篇文章,并在模板底部显示导航链接,这样用户就可以点击另一个页面查看另一篇/其余的文章。我试过这个单一代码:

<?php posts_nav_link(); ?>

但它没有显示任何导航链接。我的代码有问题吗?请帮帮我。

请尝试此代码,它可能会对您有所帮助!把它放在中频和结束后。

echo '<div class="post_pagination">';
$total_pages = $arr_posts->max_num_pages;
if ($total_pages > 1){
$current_page = max(1, get_query_var('paged'));
echo paginate_links(array(
'base' => get_pagenum_link(1) . '%_%',
'format' => '/page/%#%',
'current' => $current_page,
'total' => $total_pages,
'prev_text'    => __('« prev'),
'next_text'    => __('next »'),
));
}
echo '</div>';
wp_reset_postdata()

我找到了解决方案。

这很容易!

首先,我使用这个函数来生成分页:

<?php
function pagination_bar()
{
global $my_query;
$total_pages = $my_query->max_num_pages;
if ($total_pages > 1) {
$current_page = max(1, get_query_var('paged'));
echo paginate_links(array(
'base' => get_pagenum_link(1) . '%_%',
'format' => '/page/%#%',
'current' => $current_page,
'total' => $total_pages,
));
}
}
?>

然后我调用函数:

<?php
if (have_posts()) :
pagination_bar();
endif;
?>

就是这样。

最新更新