2013-03-09 19 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 из 45 | 1 2 3 10 20 30 NEXT LAST' – user2019515

+0

@ user2019515: Я изменил код. Plz проверить это – Sky

ответ

0

Посмотрите paginate links codex page

paginate_links() находится в сор-включает/общего template.php. (Не рекомендуется редактировать файлы ядра.)

Или вы можете попробовать этот плагин: WP-PageNavi, который даст возможность добавить «Страница 1 из 45» в начале.

+0

: Я изменил код. Пожалуйста, проверь это – Sky

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> 

Это очень легко настроить, стиль И понять.

Смежные вопросы