Intereting Posts
get_posts (), используя массив сообщений ids как заставить WordPress не искать темы Отображать панели плагинов вне административных зон Как добавить дополнительные пользовательские поля в мета-таблицу пользователя одновременно Внутреннее присоединение переопределяет get_field плагина расширенного пользовательского поля условно загружать статическое изображение по умолчанию, если изображение метабокса не имеет значения Как добавить Shortcode (font awesome) в заголовок виджета? Есть ли способ гарантировать, что браузер автоматически переводит содержимое страницы на другой язык (через Google Translate)? Объект URL-адреса новой строки при использовании esc_url () Загружать родительские страницы, если нет дочерних страниц Как переадресовать определенного пользователя (вход в систему WooCommerce, а не в WordPress), на конкретную страницу Формат содержимого содержимого из базы данных вне фильтров WordPress Может ли posts_nav_link показывать заголовки сообщений? Получение перенаправления для вывода заголовка Разрешения на папку wp-content в Windows Server 2012

Как я могу корректно разбивать файл loop.php?

Я использую тему Starkers в качестве основы для создания моей темы, и мне трудно получить мой loop.php для правильной публикации сообщений. Когда я нажимаю кнопку «Следующая» или «Предыдущая», вы можете изменить URL-адрес на example.com/page/2, но на самом деле он не загружает новые сообщения (у меня есть десятки сообщений с категорией, которую я запрашиваю, так что это не проблема.)

Вот код, который у меня есть в файле loop.php. Пожалуйста, дайте мне знать, если вам нужно, чтобы я уточнил что-то еще.

<?php include('includes/featured-content-slider.php'); ?> <!-- 960 16 Column Grid --> <div class="container_16"> <!-- Featured News --> <section class="grid_11 featured-news"> <!-- Featured News Heading --> <h1></h1> <!-- /Featured News Heading --> <!-- Featured News Loop --> <?php query_posts('category_name=featured-news'); ?> <?php while ( have_posts() ) : the_post(); ?> <!-- Featured News Loop --> <!-- Post --> <article class="post" id="post-<?php the_ID(); ?>" <?php post_class(); ?> > <!-- Featured News Title --> <span><a href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( 'Permalink to %s', 'twentyten' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_title(); ?></a> </span> <!-- /Featured News Title --> <!-- Featured News Meta --> <p class="featured-news-post-meta">By <span class="featured-news-author"><?php echo get_the_author(); ?></span> / <?php echo get_the_date('dmY'); ?> </p> <!-- /Featured News Meta --> <!-- Featured News Thumbnail --> <?php the_post_thumbnail(array(640,320)); ?> <!-- /Featured News Thumbnail --> <!-- Featured News Excerpt --> <p class="featured-news-excerpt"><?php the_excerpt(); ?></p> <!-- /Featured News Excerpt --> <!-- Featured News Social Links --> <ul class="featured-news-social-media-links"> <a href="#"><li class="facebook-share-post"></li></a> <a href="#"><li class="twitter-post"></li></a> <a href="#"><li class="google-plus-post"></li></a> <a href="#"><li class="facebook-like-post"></li></a> <a href="<?php the_permalink(); ?>"><li class="comment-post"></li></a> </ul> <!-- /Featured News Social Links --> </article> <!-- /Post --> <?php endwhile; ?> <!-- /Featured News Loop --> <!-- Pagination --> <?php if ($wp_query->max_num_pages > 1) : ?> <div class="pagination grid_3"> <?php next_posts_link( __( '&larr; Older News', 'twentyten' ) ); ?> </div> <div class="pagination grid_3 push_6"> <?php previous_posts_link( __( 'Newer News &rarr;', 'twentyten' ) ); ?> </div> <?php endif; ?> <!-- /Pagination --> </section> <!-- /Featured News --> <!-- Other News --> <aside class="grid_5 push_1 other-news"> <!-- Other News Heading --> <h3></h3> <!-- /Other News Heading --> <!-- Other News Loop --> <?php query_posts('category_name=other-news&showposts=6'); ?> <?php while (have_posts()) : the_post(); ?> <!-- Other News List --> <ul> <li><a href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( 'Permalink to %s', 'twentyten' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_title(); ?></a> </li> <li class="other-news-post-date"><?php echo get_the_date('dmY'); ?> </li> </ul> <!-- /Other News List --> <?php endwhile; ?> <?php wp_reset_query(); ?> <!-- /Other News Loop --> <!-- View More --> <div class="view-more"> <a href="/other-news">View More &rarr;</a> <div> <!-- /View More --> </aside> <!-- /Other News --> </div> <!-- /960 16 Column Grid --> 

Я не знаю, что внутри featured-content-slider.php , но я предполагаю, что это цикл, который вы хотите разбивать на страницы:

 query_posts('category_name=featured-news'); 

Проблема заключается в том, что, вызывая такие query_posts в шаблоне, вы переписываете исходный запрос для страницы и не устанавливаете параметр страницы. Ваши два варианта – либо изменить исходную строку запроса, хранящуюся в глобальной переменной query_string :

 query_posts( $query_string . '&category_name=featured-news' ); 

или лучший метод заключается в том, чтобы изменить запрос с помощью крюка действия до его возникновения, поэтому вы не просто перезаписываете оригинал. Этот пример будет рассмотрен в functions.php вашей темы, здесь мы проверим, является ли это домашней страницей и изменит запрос, указав название категории:

 function wpa54691_filter_pre_get_posts( $query ) { if ( $query->is_home ) { $query->set( 'category_name', 'featured-news' ); } return $query; } add_filter( 'pre_get_posts', 'wpa54691_filter_pre_get_posts' ); 

Для дополнительных запросов, таких как следующий:

 query_posts('category_name=other-news&showposts=6'); 

WP_Query этого вы должны использовать новый экземпляр WP_Query .

 $args = array( 'posts_per_page' => 6, 'category_name' => 'other-news' ); $other_news = new WP_Query( $args ); while( $other_news->have_posts() ): $other_news->the_post(); $the_title(); endwhile; 

Если вы также используете query_posts в featured-content-slider.php , вам также нужно будет изменить это, чтобы не мешать вашему основному циклу.