Wordpress нумерация страниц - PullRequest
0 голосов
/ 05 июля 2010

У меня есть страница WordPress, которая показывает последние новости. Я хочу разбить эти новости на страницы, и это мой код:

 <?php
query_posts('posts_per_page=5');
?>
<?php
while (have_posts()):
    the_post();
?>
   <div class="news"><h1><a href="<?php
    the_permalink();
?>" rel="news" title="<?php
    the_title_attribute();
?>"><?php
    the_title();
?></a></h1>
    <p>
    <?php
    the_excerpt();
?>
   </p>
    </div>
<?php
endwhile;
?>
<p><?php
wp_pagenavi();
?></p>
<?php
wp_reset_query();
?>                                  

У меня есть этот код в содержимом страницы, я использую плагин exec-php для разбора кода. Проблема в том, что когда я нажимаю на страницу 2, я все еще вижу новости страницы 1. Таким образом, нумерация страниц не работает.

Есть идеи?

На своей странице архива (archive.php) я тоже пробовал нумерацию страниц, но когда я нажимаю на страницу 2, вместо этого я перенаправляюсь на домашнюю страницу.

Помогите мне, пожалуйста!

Ответы [ 3 ]

2 голосов
/ 13 октября 2015

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

https://wordpress.org/plugins/jquery-post-splitter/

Использование этого плагина: https://progtec.wordpress.com/2015/10/13/jquery-post-splitter-plugin/

0 голосов
/ 03 мая 2013

это может помочь вам

http://tareq.wedevs.com/2011/07/simple-pagination-system-in-your-wordpress-plugins/

или см. Ниже Простые шаги:

$pagenum = isset( $_GET['pagenum'] ) ? absint( $_GET['pagenum'] ) : 1;

Найти общее количество записей

$limit = 10; // number of rows in page
$offset = ( $pagenum - 1 ) * $limit;
$total = $wpdb->get_var( "SELECT COUNT(`id`) FROM {$wpdb->prefix}table_name" );
$num_of_pages = ceil( $total / $limit );

Дайте ограничение:

$entries = $wpdb->get_results( "SELECT * FROM {$wpdb->prefix}table_name LIMIT $offset, $limit" );

Добавьте этот код, где вы хотите нумерацию страниц:

$page_links = paginate_links( array(
    'base' => add_query_arg( 'pagenum', '%#%' ),
    'format' => '',
    'prev_text' => __( '&laquo;', 'aag' ),
    'next_text' => __( '&raquo;', 'aag' ),
    'total' => $total,
    'current' => $pagenum
) );

if ( $page_links ) {
    echo '<div class="tablenav"><div class="tablenav-pages" style="margin: 1em 0">' . $page_links . '</div></div>';
}
0 голосов
/ 05 июля 2010

Насколько я знаю, Wordpress отклоняет любые параметры запроса URL, которые он не распознает.

Даже если вы решили эту проблему, эта функция

<?php query_posts('posts_per_page=5'); ?>

не принимает страницупараметр, поэтому кажется «очевидным», показывая всегда страницу 1. Я не знаю код внутри него, поэтому я могу ошибаться.

Я нашел эту ссылку, чтобы решить первую проблему: http://www.webopius.com/content/137/using-custom-url-parameters-in-wordpress

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...