WordPress: Вывод постов в две колонки на главной

Не могу не скопипастить себе рабочий метод, с помощью которого можно вывести посты на главной странице сайта на wordpress в две колонки. Спасибо блогу http://blogto4ka.ru

Итак, меняем код в файле index.php используемой темы отсюда:

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

и до сюда:

<?php endif; ?>

на свой:

<?php $col = 1; ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php if ($col == 1) echo "<div class=\"row\">"; ?>
  <div class="post col<?php echo $col;?>" id="post-<?php the_ID(); ?>">
  <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Постоянная ссылка <?php the_title(); ?>"><?php the_title(); ?></a></h2>
 
  <p class="postmetadata"><small><span style="float: left;"><?php the_time('j F, Y') ?><?php // the_author() ?></span> <span style="float: right;">Рубрика: <?php the_category(', ') ?> &nbsp; <?php wp_link_pages(array('before' => '', 'after' => '', 'next_or_number' => 'number')); ?>  <?php edit_post_link('Редактировать', '', ''); ?></span></small> <?php // comments_popup_link('Нет комментариев »', 'Один комментарий »', 'Комментариев: %'); ?></p>
  <br clear="all" />
 
  <div class="entry">
  <?php the_content('Читать дальше  »'); ?>
  </div>
  </div>
<?php if ($col == 1) echo "</div>"; (($col==1) ? $col=2 : $col=1); ?>
<?php endwhile; else : ?>
   <h2 class="center">Не найдено</h2>
   <p class="center">Здесь ничего нет, попробуйте поискать:</p>
   <?php include (TEMPLATEPATH . "/searchform.php"); ?>
<?php endif; ?>

А также, обязательно! дописываем в css файле темы стили для наших двух колонок:

.row{clear: both;}
.col1{width: 200px; float: left; padding: 0 10px;}
.col2{width: 200px; float: right;  padding: 0 10px;}

Само собой, ширину этих колонок и другое оформление меняеть очень просто. Повторю, без записей в css результата не будет.

Сегодня этот метод отлично сработал на сайте с WP 2.9.2.
Рекомендую делать бэкапы файлов , где вы делаете правки, на всякий случай.

WordPress: Вывод постов в две колонки на главной
3.7 Голосов:3

12 комментариев

Сео-нуб 20.01.2011 Reply

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

[Ответить]

admin

@Сео-нуб, если речь идёт о выводе на главной постов в две колонки из определённой категории, то вот как я это делал. если же вы хотите при просмотре категории видеть посты в ней расположенными в две колонки – то этого я не знаю как сделать (

[Ответить]

Сергей 28.10.2011 Reply

Подскажите, а как реализовать вывод в 4 колонки, очень нужно. Спасибо заранее.

[Ответить]

admin

@Сергей, увы, не подскажу (

[Ответить]

Мотоциглист 22.12.2011 Reply

Оченама полезный пост, спасибо )
Стырил себе, пускай народ знает где правда зарыта! 😀
буду ковырять, мб получится вывод в категории…

[Ответить]

Мотоциглист 22.12.2011 Reply

нашел – вывод в 3 колонки:

&lt;?php if ($col == 1) echo &quot;"; if($col == 1) {$col = 2;}  else { if($col != 1) { if($col == 3) {$col = 1;} if($col == 2) {$col =  3;} } } ?&gt;

[Ответить]

Мотоциглист 22.12.2011 Reply

Для разбивки одиночного поста на колонки плагин:
http://wordpress.org/extend/plugins/magazine-columns/

[Ответить]

Мотоциглист 22.12.2011 Reply

И плагин для разбивки на колонки, сегодня потестирую =)
http://wordpress.org/extend/plugins/easy-columns/

[Ответить]

Oleg 06.09.2012 Reply

Спасибо за код!Все работает нормально даже у чайников.Но еще очень надо, что бы верхний пост выводился на всю ширину, а остальные в две колонки.

[Ответить]

Два Бота

@Oleg, Тоже маюсь этой фигней =(

@adminsaita – подскажи если знаешь как реализовать?!!

[Ответить]

admin

@Два Бота, увы (

[Ответить]

profit 01.11.2012 Reply

а как одну рубрику разбить на 2 колонки?

[Ответить]

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