За вывод записей на WordPress у нас отвечает отдельный файл шаблона – single.php
. Однако, это вывод одной записи внутри цикла, который определяется функциями бесплатного движка и не создает никакой сложности. Но как вывести записи wordpress на другой странице или же на главной странице?
get_posts()
В данном случае нам понадобится функция get_posts()
. С ее помощью мы можем получить доступ ко всем постам по нужным нам критериям. Плюсов у этого метода достаточно много, одним из них является возможность сортировки постов по дате, наименованию, ID и др. Список всех аргументов достаточно большой, просмотреть вы его сможете в кодексе WordPress, а мы же рассмотрим на прямом примере только самый необходимый набор для выполнения поставленной задачи.
Итак, принцип работы функции:
$posts = get_posts( $args );
Как вы понимаете, в переменной $args
мы задаем все необходимые параметры вывода наших постов. В переменной posts мы получаем массив данных, который готов к выводу в цикле. После завершения цикла не забываем использовать функцию wp_reset_postdata()
, которая позволит нам избежать багов на странице с дополнительными циклами, связанными с выводом записей. Наш код будет выглядеть следующим образом:
<?php global $post; $args = array( 'numberposts' => 9 , 'category' => 1, 'orderby' => 'date'); $myposts = get_posts( $args ); foreach( $myposts as $post ){ setup_postdata($post); ?> <div class="post"> <div class="post-img"><?php the_post_thumbnail('thumbnail'); ?></div> <div class="post-txt"> <h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3> <div class="post-date"><?php echo get_the_date('j F Y'); ?></div> </div> </div> <?php } wp_reset_postdata(); ?>
Это уже полностью готовый код для вставки в нужное для вас место шаблона вашей темы. Немного поясню по поводу заданных аргументов. В параметре numberposts
мы задаем количество выводимых записей, в category
– указываем ID
категории, а orderby
у нас отвечает за сортировку по дате.
В цикле уже используется обычный шаблон с выводом миниатюры, ссылки на запись, заголовок и дата публикации. Как видите, все достаточно просто, теперь вы сможете выводить записи wordpress в любом месте своей темы.

Подписка на обновления:
Настолько такая практика (вставлять динамические посты в отдельные шаблоны) приемлема с точки зрения профессиональности разработки wordpress?
Алексей, уточните вопрос, не согласован, либо опечатка.
Спасибо огромное. Но возник вопрос: как к подобному выводу записей сделать пагинацию, т.к. стандартная функция WP не работает.
Скажите пожалуйста, а куда надо его вставлять в какой файл?
Александр, в тот и туда, где нужно вывести записи.
Супер! Идеально! Спасибо
Спасибо , друг , все работает!!!