更改wordpress中的默认分页样式

更改wordpress中的默认分页样式,wordpress,pagination,wordpress-theming,Wordpress,Pagination,Wordpress Theming,我是WordPress的初学者,并开始学习它。我正在从现有的父主题设计一个新的子主题。父级中主页的分页 « Previous 1 2 3 Next » 但我想这样修改它: Page 1 of 45 1 2 3 NEXT 10 20 30 LAST 以下是我的代码: if (!is_singular()) { global $wp_query, $rtp_post_comments;

我是WordPress的初学者,并开始学习它。我正在从现有的父主题设计一个新的子主题。父级中主页的分页

«   Previous   1   2   3   Next   » 
但我想这样修改它:

Page 1 of 45   1   2   3   NEXT   10    20    30    LAST
以下是我的代码:

if (!is_singular()) {
            global $wp_query, $rtp_post_comments;
            if (isset($rtp_post_comments['pagination_show']) && $rtp_post_comments['pagination_show']) {
                if (( $wp_query->max_num_pages > 1)) {                    
                        ?>
                    <nav class="wp-pagenavi"><?php
                    echo "<span class='page-count'>Page 1 of " . $wp_query->max_num_pages . "</span>";                    
                    echo paginate_links(array(
                        'base' => str_replace(999999999, '%#%', esc_url(get_pagenum_link(999999999))),
                        'format' => '?paged=%#%',
                        'current' => max(1, get_query_var('paged')),
                        'total' => $wp_query->max_num_pages,
                        'prev_text' => esc_attr($rtp_post_comments['prev_text']),
                        'next_text' => esc_attr($rtp_post_comments['next_text']),
                        'end_size' => $rtp_post_comments['end_size'],
                        'mid_size' => $rtp_post_comments['mid_size']
                    ));
                        ?>
                    </nav><?php
                }
            } elseif (function_exists('wp_pagenavi')) {
                wp_pagenavi();
            } elseif (get_next_posts_link() || get_previous_posts_link()) {
                    ?>
                <nav class="navigation clearfix">                                  
                    <?php if (get_next_posts_link()) { ?><div class="alignleft"><?php next_posts_link(__('Older Entries')); ?></div><?php } ?>
                    <?php if (get_previous_posts_link()) { ?><div class="alignright"><?php previous_posts_link(__('Newer Entries')); ?></div><?php } ?>
                </nav><?php
            }
        }
if(!is_singular()){
全局$wp\U查询,$rtp\U发布\U评论;
if(isset($rtp_post_comments['pagination_show'])和&$rtp_post_comments['pagination_show'])){
如果($wp_query->max_num_pages>1)){
?>
看看

paginate_links()位于wp includes/general-template.php中。(不建议编辑核心文件。)


或者你可以试试这个插件:它会提供一个选项,在开头添加“第1页,共45页”。

我发现,对于一些自定义内容,wordpress函数不太容易理解。但是一个很好的解决方法是:

global $page, $numpages;

if ( $numpages > 1 ) : 
                if ( $page == 1 ) {
                    $prev_link = '&nbsp;';
                    $next_link = '<a href="' . get_permalink() . ( $page+1 ) . '">Next Page</a>';
                } else if ( $page == $numpages ) {
                    $prev_link = '<a href="' . get_permalink() . ( $page-1 ) . '">Prev. Page</a>';
                    $next_link = '&nbsp;';
                } else {
                    $prev_link = '<a href="' . get_permalink() . ( $page-1 ) . '">Prev. Page</a>';
                    $next_link = '<a href="' . get_permalink() . ( $page+1 ) . '">Next Page</a>';
                }
            ?>
            <div id="post-pagination">
                <div class="prev-page"><?php echo $prev_link; ?></div>
                <div class="spacer"><?php echo $page.' / '.$numpages; ?></div>
                <div class="next-page"><?php echo $next_link ?></div>
            </div>
global$page,$numpages;
如果($numpages>1):
如果($page==1){
$prev_link='';
$next_link='';
}else if($page==$numpages){
$prev_link='';
$next_link='';
}否则{
$prev_link='';
$next_link='';
}
?>

这很容易定制、设计和理解。

看起来很复杂,也许这更容易使用:
第1页,共45页| 1 2 3 10 20 30下一页
@user2019515:我已经修改了代码。请检查一下