2016-10-13 2 views
1

Я работаю над проектом WordPress. В этом проекте в соответствии с требованием я реализую пользовательскую разбивку на страницы для разбивки на страницы. Он работает хорошо, когда мы нажимаем на страницу 2, 3 и т. Д., Но когда я на другой странице, чем на первой странице, и вы хотите перейти на первую страницу и нажмите 1 ссылку, то она не работает. Я не понимаю, в чем проблема.WordPress пользовательская разбивка на страницы работает не очень хорошо

код моей пользовательской пагинации:

function custom_pagination($numpages = '', $pagerange = '', $paged='') { 
     if (empty($pagerange)) { 
      $pagerange = 2; 
     } 
     global $paged; 
     if (empty($paged)) { 
      $paged = get_query_var('paged') ? intval(get_query_var('paged')) : 1; 
     } 
     if ($numpages == '') { 
      global $wp_query; 
      $numpages = $wp_query->max_num_pages; 
      if(!$numpages) { 
       $numpages = 1; 
      } 
     } 
     $pagination_args = array(
      'base'   => '%_%', 
      'format'   => '?paged=%#%', 
      'total'   => $numpages, 
      'current'   => $paged, 
      'show_all'  => true, 
      'end_size'  => 1, 
      'mid_size'  => $pagerange, 
      'prev_next'  => True, 
      'prev_text'  => esc_html__('Prev','textdomain'), 
      'next_text'  => esc_html__('Next','textdomain'), 
      'type'   => 'list', 
      'add_args'  => false, 
      'add_fragment' => '' 
     ); 
     $paginate_links = paginate_links($pagination_args); 
     if ($paginate_links) { 
      echo "<nav class='pagination-nav'>".$paginate_links."</nav>"; 
     } 
    } 

ответ

0

Наконец-то получил решение этой проблемы. В базе кода необходимо изменить:

'base' => @add_query_arg('paged','%#%'), 
0

Проверьте, если ваша функция custom_pagination() применяется front_page, может быть, ваша темы есть специальная шаблонная часть для первой страницы списка сообщений на странице.

Существует много способов, начать поиск в каталоге темы файл части, где основной цикл и искать:

если ((is_home() || is_front_page())) {...}

Может быть, у вас есть раздел с:

если (is_paged()!) {....}

Это включает специальный шаблон детали для первой страницы.

EDIT: Извините, что я плохо прочитал ваш вопрос и мой плохой английский, не могли бы вы уточнить, какая плохая ссылка была показана на инспекторе для первой страницы и какова ожидаемая ссылка?

+0

Я использовал эту функцию для пользовательских шаблонов. Когда я проверяю 1 ссылку, то ее URL-адрес пуст, но при отсутствии ссылок на 2,3 и т. Д. Я получил правильный URL-адрес. –

+0

В простых словах разбиение на страницы хорошо работает для всех ссылок вместо 1 ссылки на страницу. Значит, когда я перехожу на другую страницу вместо 1 страницы и хочу вернуться на 1 страницу, тогда разбиение на страницы не работает. –

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