2013-03-09 129 views
0

我是WordPress的初学者,开始学习它。我正在从现有的父主题设计新的儿童主题。主页的父在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 
      } 
     } 

我应该在哪里改变呢?

+0

看起来非常复杂,也许这更容易使用: 1 2 3 10 20 30 NEXT LAST' – user2019515 2013-03-09 11:13:14

+0

@ user2019515:我修改了代码。 Plz检查它 – Sky 2013-03-18 10:25:19

回答

0

看一看paginate links codex page

paginate_links()位于WP-包括/通用的template.php。 (建议不要编辑核心文件。)

或者你可以试试这个插件:WP-PageNavi,它会给出一个选项在开始时添加“第1页,共45页”。

+0

:我修改了代码。请检查一下 – Sky 2013-03-18 10:26:17

0

我发现,对于一些自定义的东西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> 

这是很容易定制,风格和理解。