@Legal2019
Всё в имени моём... и радость и печаль...

Что не так с пагинацией?

Ни как не могу понять...
...делаю по шаблону...
Есть файл category.php со стандартным кодом. На его основе сделал файл category-stati.php
В стандартной записи WP добавил рубрику статьи (stati), в которой сделал дочки разное (raznoe) + тест1 (test1) + тест2(test2).
Наклепал штук 30 тестовых постов и закрепил их за вышеуказанными рубриками и подрубриками. В сайдбаре сделал:
<div class="blocksidebar_all_publication_href">
<a href="/stati/" title="Читать вcе публикации...">Вcе публикации...</a>
    </div>

Если выхожу через вышеуказанную ссылку на http://localhost:8089/stati/, то включается постраничная пагинация и урл становиться: http://localhost:8089/stati/page/2/.
Но если я захожу через кнопку сделанную в меню (внешний вид -> меню -> Добавьте элементы меню -> рубрика -> Статьи), то постраничная пагинация нормально не работает, а урл становиться: http://localhost:8089/category/stati/
Т.е. она показывает http://localhost:8089/category/stati/page/2/, но вывод записей осуществляется лишь последние 10 шт., ну или, скажем 5, если выставить в "На страницах блога отображать не более 5".

Люди, объясните мне, дураку, что не так и в какую сторону копать, ведь такая же фигня и с архивами и с метками и с добавленной произвольной записью и таксами.
Вопрос простой, но не могу понять я, кроме того, что фигня эта из-за разного места нахождения записей (если брать во внимание урл http://localhost:8089/category/stati/page/2/ и http://localhost:8089/stati/page/2/)
  • Вопрос задан
  • 119 просмотров
Решения вопроса 1
@Legal2019 Автор вопроса
Всё в имени моём... и радость и печаль...
Решение оказалось весьма простым.
Чтобы в последствии не возникало проблем с навигацией, для всех записей было принято оставить полные ссылки
localhost:8089/category/stati/page/2

Стандартный код работает нормально.
P.S. "Для желающих почитать почему именно: можно почитать тут (ru.wordpress.org/support/topic/)."

Для кастомных типов записей, оказалось тоже простое решение.
Просто в стандартном коде, на странице нужного архивного файла (taxonomy-{taxonomy}. php или taxonomy-{taxonomy}-{term}. php) в конструкции } elseif ( is_singular( 'post' ) ) { нужно указать } elseif ( is_singular( 'ваша таксономия' ) ) {
Стандартный код для таксономии:
<?php
		// Start the loop.
		while ( have_posts() ) : the_post();
                    // Include the single post content template.
                    get_template_part( 'template-parts/content-page/spravka-page', 'page' );
                    // If comments are open or we have at least one comment, load up the comment template.
                    if ( comments_open() || get_comments_number() ) {
			comments_template();
			}
                    if ( is_singular( 'attachment' ) ) {
                        // Parent post navigation.
                        the_post_navigation( array(
                            'prev_text' => _x( '<span class="meta-nav">Published in</span><span class="post-title">%title</span>', 'Parent post link', 'ваша тема' ),
                            ) );
			} elseif ( is_singular( 'ваша таксономия' ) ) {
                            // Previous/next post navigation.
                            the_post_navigation( array(
                                'next_text' => '<span class="meta-nav" aria-hidden="true">' . __( 'Next', 'ваша тема' ) . '</span> ' .
                                '<span class="screen-reader-text">' . __( 'Next post:', 'ваша тема' ) . '</span> ' .
				'<span class="post-title">%title</span>',
				'prev_text' => '<span class="meta-nav" aria-hidden="true">' . __( 'Previous', 'ваша тема' ) . '</span> ' .
				'<span class="screen-reader-text">' . __( 'Previous post:', 'ваша тема' ) . '</span> ' .
				'<span class="post-title">%title</span>',
				) );
                            }
			// End of the loop.
		endwhile;
		?>
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы