Выводим статьи по рубрике

Выводим статьи по рубрикеИногда возникает необходимость в автоматическом режиме выводить статьи по рубрике. Например, вы хотите на странице блога или в сайдбаре вывести список определенных статей с миниатюрами (пример см. на картинке).

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

Иногда нужно вывести список статей определенной тематики в нужном месте, а с этим кодом нет необходимости делать это вручную.

Как это сделать, давайте разберем. Во-первых, за вывод статей по рубрике отвечает php-код:

<div class="popular">
<?php query_posts('cat=5&showposts=10'); ?><ul>
  <?php while (have_posts()) : the_post(); ?>
  <li><a href="<?php the_permalink() ?>"><?php the_post_thumbnail(); ?><?php the_title(); ?></a></li>
  <?php endwhile;?>
</ul>
</div>

Где во второй строчке нужно указать ID рубрики (cat) и количество выводимых сообщений (showposts). Определяется ID рубрики так: подведите курсор к названию нужной рубрики и в нижнем левом углу экрана высветится ссылка на нее, которая содержит ID (см. картинку ниже).

Определение ID рубрики

Теперь главное, куда этот php-код установить. Если вы хотите устанавливать в сайдбар, вам нужен плагин PHP Code Widget, после установки которого в виджетах у вас появится PHP Code, вот в него и установите код выше. Но прежде нужно добавить стили, для этого в файл style.css вашей темы (Внешний вид — Редактор — Таблица стилей (style.css)) добавим:

.popular ul li {
    line-height: 1.5;
    border-bottom: 1px solid #EEEEEE;
    padding: 5px;
    margin: 3px;
    height: 35px;
    width: 95%;
    max-width: 270px;    font-size: 12px;
    display: inline-block;
    zoom: 1;
    vertical-align: top;
}
 
.popular a {
    text-decoration: none;
    color: #505050;}
 
.popular a:hover {
    color: #36659f;}
 
.popular ul li img {
    width: 35px;    height: 35px;    padding: 2px;
    float: left;
    margin: 0 10px 10px 0;
    background: #FFFFFF;
    border: 1px solid #EEEEEE;
    border-radius: 5px;
    box-shadow: 0 0 5px #CCCCCC;
}

Где можно отрегулировать ширину блока, цвет ссылки и цвет ссылки при наведении, ширину и высоту миниатюры (переменные подсвечены), а так же другие стили для отображения списка статей. При желании разобраться можно.

Если же вам нужно вывести этот же список на определенной странице (пример), то тут надо прежде создать ее шаблон. Для этого скачиваем page.php через файловый менеджер, как правило этот файл отвечает за вывод статических страниц в блоге. Лежит он в папке вашей темы, путь: public_html/wp-content/themes/название_темы, скачайте его. Далее, меняем название, добавляем php-код и закачиваем в папку темы.

Теперь подробно. Выглядеть изначально он может примерно так, хотя, естественно, будут отличия:

<?php get_header(); the_post(); ?>
 
<div <?php post_class('post') ?>>
    <h1 class="entry-title noinfo"><?php the_title(); ?></h1>
 
    <div class="content">        <?php the_content() ?>        <div class="clear"></div>    </div> 
    <?php if(is_singular()) comments_template(); ?>
</div>
 
<?php get_footer() ?>

После исправлений в результате получится примерно такой:

<?php/*Template Name: Статьи*/?><?php get_header(); the_post(); ?>
 
<div <?php post_class('post') ?>>
    <h1 class="entry-title noinfo"><?php the_title(); ?></h1>
 
<div class="popular"><?php query_posts('cat=5&showposts=10'); ?><ul>  <?php while (have_posts()) : the_post(); ?>  <li><a href="<?php the_permalink() ?>"><?php the_post_thumbnail(); ?><?php the_title(); ?></a></li>  <?php endwhile;?></ul></div> 
    <?php if(is_singular()) comments_template(); ?>
</div>
 
<?php get_footer() ?>

Что мы сделали. Во-первых в начале добавили название шаблона страницы, у меня «Статьи», можете заменить на название рубрики, например.

Во-вторых, вместо кода вывода контента (в исходном варианте код подсвечен) добавили php-код, который отвечает за вывод статей по рубрике, тот что я давала вначале.

После этот файл надо сохранить, назвав например staty.php, в ту же папку где лежит файл page.php. Так же нужно добавить стили в файл style.css.

Теперь создайте страницу, дайте ей название и выберите атрибутах страницы шаблон «Статьи» (см. картинку ниже), ну или то название, которое вы дали странице. После публикации, если все сделали как надо, страница выведет статьи по рубрике с миниатюрами, чего мы и добивались.

Выбор шаблона страницы

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

Светлана Ковалева

Мастер креатива и нестандартных решений
ВКонтакте Facebook Twitter Одноклассники
Запись опубликована в рубрике Сайтостроение с метками , . Добавьте в закладки постоянную ссылку.
Подпишитесь на обновления блога:

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