WordPress: как сделать новости на главной странице

30 января 2014

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

Вывод новостей на главной странице сайта на WordPress

Мы будем выводить наши новости на главной странице в блоке справа (sidebar.php) и выводить не больше 3 новостей на странице с кликабельным заголовком, коротким содержанием, датой и превью-изображением.

  1. Для начала создадим в админ-панели рубрику "Новости" с ярлыком "news".
  2. В записи создем тестовую запись с заголовком "новость", коротким описанием и миниатюрой записи; присваиваем записи рубрику "новости", сохраняем.
  3. В файле sidebar.php по ftp сразу после <?php if ( is_active_sidebar( 'sidebar-2' ) ) : ?> пишем следующий код:

<?php query_posts('cat=5&posts_per_page=10'); ?>
// cat=5 - ID новосозданной рубрики "Новости" (можно увидеть при наведении на пункт меню "изменить" в соответствующей
рубрике); posts_per_page=10' - постов на странице (этот пункт обязательно нужно указать, если у вас больше одного
блока, подобного новостям на сайте)
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <?php if ( in_category('5') ) { ?> // не забудьте указать ваш ID рубрики новости <h1><?php the_title(); ?></h1> // здесь заголовок вашей новости, можно оформить его с помощью любого тега <p><?php echo get_the_post_thumbnail($page->ID, array(120,100)); ?></p> // для превью изображения жестко заданы параметры ширины и высоты на случай, если загруженное изображение будет больше <?php } ?>

Немного стилей и в результате у нас получится вот такой симпатичный блок, который можно использовать для объявления акций и скидок, а если добавить дату с помощью тега <?php the_time(); ?> - то и для вывода новостей: