Intereting Posts
Как вставлять изображения в сообщения без использования диалогового окна «Добавить медиа» Это хороший код для защиты wordpress от htaccess? Надежный метод обнаружения мобильных телефонов Исходное смещение количества сообщений на главной странице на странице сообщений ссылки на сообщения, не работающие на главной странице Как предотвратить удаление сообщения? Изменить порядок меню основного пост-типа в пользовательском интерфейсе? Как включить все файлы в папку и ее подпапки в functions.php? Есть ли стиль по умолчанию style.css Применение CSS для переменной PHP Плагин генерировал х символов неожиданного вывода, $ wpdb не определен Как создать шаблон для категорий родителей и детей? Как изменить тег на основе значения метабокса в $ wp_query Должен ли я использовать пользовательскую таксономию или пользовательский тип сообщения Сброс соединения при сохранении почты / страницы

posts_nav_link в шаблоне одной публикации

У меня есть тип сообщения, называемый journal и в шаблоне single-journal.php Я спрашиваю остальную часть сообщений journal так:

 <?php query_posts( array( 'posts_per_page' => 4, 'post_type' => 'journal', 'paged' => ( get_query_var('page') ? get_query_var('page') : 1 ), )); ?> 

Это отлично работает, но отображает навигацию: <?php posts_nav_link(' ',' ','load more posts +'); ?> <?php posts_nav_link(' ',' ','load more posts +'); ?> ссылается на /journal/POST_TITLE_HERE/page/2 где я хочу отображать /journal/page/2 (как показано на шаблоне journal-archive.php ), если это вообще возможно? Любые предложения будут ценны!

Отдельные страницы предназначены для отображения одного сообщения, а не индекса сообщений в качестве страницы архива. Я не совсем уверен, что вы пытаетесь достичь здесь.

Это всегда плохая идея попробовать и использовать конкретный шаблон для чего-либо еще, чем того, для чего он предназначался. Основной запрос довольно специфичен для конкретного шаблона, в этом случае основной запрос будет настроен на запрос и получение конкретной отдельной записи, запрашиваемой. Отдельные страницы не предназначены для использования в архивных или индексных страницах

Именно по этой причине вы получаете эти непоследовательные и непреднамеренные результаты. Что WordPress пытается сделать, так это отобразить страницу 2 текущей отдельной записи, поэтому вы получаете этот странный URL.

Есть несколько моментов, которые я хотел бы отметить также:

  • Никогда не используйте query_posts , и мой акцент, абсолютно никогда.

Примечание. Эта функция не предназначена для использования плагинами или темами. Как поясняется ниже, есть более эффективные, более эффективные варианты для изменения основного запроса. query_posts () является слишком упрощенным и проблематичным способом изменения основного запроса страницы путем замены его новым экземпляром запроса. Он неэффективен (повторно запускает SQL-запросы), и в некоторых случаях он будет неудачным (особенно часто при работе с разбивкой по страницам).

  • Никогда не меняйте основной запрос для любого типа пользовательского запроса на домашней странице, на любой странице архива или на одном шаблоне страницы.

  • posts_nav_link не предназначен для использования на отдельных страницах

  • Страница вашего архива, чтобы отобразить свой собственный тип сообщения, должна быть названа archive-journal.php, а не journal-archive.php. Это противоречит обычной иерархии шаблонов

Для дальнейшего чтения перейдите и проверьте следующие ссылки:

  • Некоторые сомнения в том, как основной запрос и пользовательский запрос работают в этой настраиваемой теме?

  • Иерархия шаблонов

  • next_post_link

  • previous_post_link