Как вывести записи wordpress

15019

За вывод записей на WordPress у нас отвечает отдельный файл шаблона – single.php. Однако, это вывод одной записи внутри цикла, который определяется функциями бесплатного движка и не создает никакой сложности. Но как вывести записи wordpress на другой странице или же на главной странице?

Как вывести записи 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 в любом месте своей темы.

7
  1. 5
  2. 4
  3. 3
  4. 2
  5. 1
(10 голосов, в среднем: 4 из 5)
не скупись ;-) оцени статью
Подписка на обновления:
Автор блога Рябухин Максим

Я фрилансер веб-разработчик. Последние несколько лет занимаюсь версткой и веб-программированием на PHP и Javascript. Если вам понадобится помощь с блогом Wordpress, либо адаптация сайта, я всегда рад помочь.

связаться

Вместе с этим советую почитать:

Оставьте комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:
не пытайтесь оскорбить автора, либо участников блога, ваши комментарии все равно не будут промодерированы!
у меня есть сайт

комментариев: 7
  • Алексей

    Настолько такая практика (вставлять динамические посты в отдельные шаблоны) приемлема с точки зрения профессиональности разработки wordpress?

    Ответить
    • Максим Рябухин

      Алексей, уточните вопрос, не согласован, либо опечатка.

      Ответить
  • Олег

    Спасибо огромное. Но возник вопрос: как к подобному выводу записей сделать пагинацию, т.к. стандартная функция WP не работает.

    Ответить
  • Александр

    Скажите пожалуйста, а куда надо его вставлять в какой файл?

    Ответить
    • Максим Рябухин

      Александр, в тот и туда, где нужно вывести записи. ;-)

      Ответить
  • Сергей

    Супер! Идеально! Спасибо ;)

    Ответить
  • Акмаль

    Спасибо , друг , все работает!!!

    Ответить
показать все