Вывод записей WordPress в любом месте сайта #2

30 июня 2014

При создании сайтов я довольно редко использую в качестве главной страницы «Последние записи», то есть в качестве главной у меня всегда выступает статичная страница с графическими элементами, слайдером и информацией из основных рубрик сайта. Обычно для этой цели я создаю отдельный файл в теме, где верстаю все необходимые элементы.
Схематически это может выглядеть вот так:

В связи с этим часто возникает необходимость вывести записи определенной рубрики на главную страницу в необходимом количестве.
Я уже рассказывал о выводе записей определенной рубрики WordPress в любом месте блога, используя файлы темы или сайдбар.
Сегодня продемонстрирую ещё один пример, как лаконично вывести пять последних новостей на главную страницу сайта.
Для этого я использую произвольный цикл с глобальной переменной $post

<ul>
<?php
$pc = new WP_Query('category_name=novosti&amp;showposts=5'); ?>
<?php while ($pc->have_posts()) : $pc->the_post(); ?>
<li>
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_post_thumbnail(array()); ?></a>
<span class="news-date"><?php the_time('j F, Y'); ?></span><br/>
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a>
</li>
<?php endwhile; ?>
<?php wp_reset_postdata(); ?>
</ul>

Что делает этот фрагмент кода?
Для начала мы задаем создание списка html-тегом ul.
Далее при помощи класса WP_Query мы получаем необходимое количество постов из указанной категории WordPress:
category_name=novosti &showposts=5
В данном случае будут получены 5 постов из категории под названием «novosti».
После этого включается цикл, в котором создаются 5 новостей в виде пунктов li.
У каждой записи списка предусмотрен вывод заголовка в виде ссылки на полное содержание поста и миниатюры (thumbnail), а также даты.

В конце цикла мы как бы обнуляем наши запросы при помощи функции wp_reset_postdata ().
Это необходимо для того, чтобы избежать глюков с ID постов и страниц.

Рассмотренный фрагмент необходимо дописать в то место файла темы, где необходимо вывести данные записи.
В моем случае это файл для главной страницы сайта.

Данный произвольный цикл можно использовать и в сайдбаре, в тестовом виджете.
Для этого необходимо установить плагин PHP Code Widget, который обеспечит выполнение PHP скриптов в обычном тестовом виджете WordPress.
Надеюсь, данная заметка окажется полезной.



Комментариев нет

Обязательные поля отмечены *

Добавить комментарий