Меня этот вопрос не то чтобы мучал, но удивляло отсутствие возможности в стандартной сборке Вордпресса представления постов на первой странице хотя-бы в две колонки. Многие шаблоны дизайна имеют довольно широкую область, в которой публикуются сообщения. И читать длинные строки не совсем удобно. К тому же особо активно пишущие блоггеры, желающие вместить побольше публикаций на первой странице, в итоге получают километровые полосы прокрутки.
Свой взгляд на решение этой проблемы опубликовала девушка по имени Rachel. Она предлагает модификацию двух файлов в выбранной вами теме — index.php и style.css. Устанавливается своеобразный «переключатель», сортирующий публикации по разным колонкам. А детально схема выгдядит так:
В файле index.php добавляется код в четырех местах:
Перед началом Wordpress loop:
<?php $col = 1?>
Выбор первой колонки.
Сразу после начала Wordpress loop:
<?php if ($col == 1) echo "<div class=\"row\">"; ?>
Начало следующей строки.
Внутри цикла Wordpress loop:
Модифицируем сам цикл:
<div class="post col<?php echo $col;?>" id="post-<?php the_ID(); ?>">
Фрагмент col<?php echo $col;?> добавляется к классу сообщения, поскольку для форматирования колонок будет использована таблица стилей.
Вместо окончания цикла Wordpress:
<?php if ($col == 1) echo "</div>"; <?php (($col==1) ? $col=2 : $col=1); endwhile; ?>
Цикл Wordpress заканчивается командой endwhile — этот оператор убираем.
Алгоритм данной модификации следующий:
Мы на первой колонке? Да: Переходим на вторую колонку. Нет: Переходим на первую.
В таблице стилей style.css добавляются три строки:
.row { clear: both; }
.col1 { width: 200px; float: left; padding: 0 10px; }
.col2 { width: 200px; float: right; padding: 0 10px; }
Соответственно ширина колонок и отступы указываются по своему усмотрению. Колонки различной длины выравниваются по высоте благодаря классу .row.




