wordpress - 如何在 wordpress 的自定义模板页面中插入分页
问题描述
我想为我的WordPress
博客主题添加分页,但我不能使用,,paginate_links
这
是我的查询next_posts_links
preveius_posts_links
<h1>posts</h1>
<?php
$our_current_page = get_query_var('paged');
$args = array(
'post_type' => 'post',
'posts_per_page' => get_option('posts_per_page'),
'order' => 'DESC',
'paged' => $our_current_page
);
$my_query = new WP_Query($args);
while ($my_query->have_posts()):
$my_query->the_post();
$mypost = $post->ID;
?>
<?php echo the_post_thumbnail('thumbnail',array('class'=>'img-rounded'));?> <h2><a href="<?php echo get_permalink();
?>"><?php the_title(); ?></a></h2>
<small><?php echo get_the_date() . " | ";
$mycats = get_the_category();
$cats = array();
for($i = 0; $i < count($mycats) - 1; $i++){
$cats[$i] = $mycats[$i]->name;
}
echo implode(" - ",$cats). " | " . get_the_author_meta('display_name');
?>
</small>
<hr>
<?php update_post_meta( get_the_id(), '_visibility', 'visible' ) ?>
<?php endwhile; wp_reset_postdata(); ?>
</div>
<br>
<br>
<!-- here i want my pagination -->
<br>
请帮我这样做,是否有任何插件可以帮助我在模板中使用分页?
解决方案
请替换下面有帮助的代码
<h1>posts</h1>
<?php
if ( get_query_var('paged') ) { $paged = get_query_var('paged'); } else if ( get_query_var('page') ) {$paged = get_query_var('page'); } else {$paged = 1; }
$args = array(
'post_type' => 'post',
'posts_per_page' => get_option('posts_per_page'),
'order' => 'DESC',
'paged' => $paged
);
$my_query = new WP_Query($args);
while ($my_query->have_posts()):
$my_query->the_post();
$mypost = $post->ID;
?>
<?php echo the_post_thumbnail('thumbnail',array('class'=>'img-rounded'));?> <h2><a href="<?php echo get_permalink();?>"><?php the_title(); ?></a></h2>
<small><?php echo get_the_date() . " | ";
$mycats = get_the_category();
$cats = array();
for($i = 0; $i < count($mycats) - 1; $i++){
$cats[$i] = $mycats[$i]->name;
}
echo implode(" - ",$cats). " | " . get_the_author_meta('display_name');
?>
</small>
<hr>
<?php update_post_meta( get_the_id(), '_visibility', 'visible' ) ?>
<?php endwhile;
wp_reset_postdata();
if( $my_query->max_num_pages > 1){
$my_query->query_vars['paged'] > 1 ? $current = $my_query->query_vars['paged'] : $current = 1;
echo paginate_links( array(
'base' => str_replace( '999999999', '%#%', esc_url( get_pagenum_link( '999999999' ) ) ),
'format' => '',
'add_args' => '',
'current' => $current,
'total' => $my_query->max_num_pages,
'prev_text' => '<i class="fas fa-angle-left"></i>',
'next_text' => '<i class="fas fa-angle-right"></i>',
'type' => 'plain',
'end_size' => 3,
'mid_size' => 3
) );
}
?>
</div>
<br>
<br>
<!-- here i want my pagination -->
<br>
推荐阅读
- python - 如何按索引重命名 PySpark 数据框列?(处理重复的列名)
- wordpress - 如何通过您的 ID 将产品链接到特定客户?
- django - 如何在 django 中将数据添加到数据库中?
- regex - 在 Google Data Studio 中使用通配符求和?
- python - Python 中的 Pandas 箱线图
- java - Windows 上 JavaFX 应用程序的自包含应用程序打包:InnoSetup 或 javafxpackager?
- python - Keras LSTM 形状不包含序列长度
- node.js - 使用 enctype="multipart/form-data" 以 csrf 错误结束
- javascript - 使用 javascript 更新 React 组件
- .net - 带有实体框架的 SQLite。System.Data.SQLite 数据库文件未显示在数据源中