Как вывести категории в две колонки

Как вывести категории в две колонки | n-wp.ru Настройки

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

tiaurus-2010-01-06_173957

Вывести рубрики в две колонки поможет ручная правка кода. Если рубрики выводятся виджетом, то после добавления специального кода, можно отказаться от виджета вообще. Если категории выводятся в сайдбаре автоматически, то есть код предусмотрен уже в теме, то мы сейчас исправим его на тот, который нам нужен. Найдите в файле sidebar.php примерно такой код:

</pre>
<p>Это и есть тот код, который выводит категории списком в одну колонку. Его нужно заменить на этот:</p>
<pre> <?php
$cats = explode("<br />",wp_list_categories('title_li=&echo=0&depth=1&style=none'));
$cat_n = count($cats) - 1;
for ($i=0;$i<$cat_n;$i++):
if ($i<$cat_n/2):
$cat_left = $cat_left.'<li>'.$cats[$i].'</li>';
elseif ($i>=$cat_n/2):
$cat_right = $cat_right.'<li>'.$cats[$i].'</li>';
endif;
endfor;
?>
<ul class="left">

</ul>
<ul class="right">

</ul>

Так как у каждой колонки есть ширина, то ее следует определитьв файле style.css. Например, ширина сайдбара равна 300px. Тогда в style.css добавляем:

 .right {float:left; width:140px;}
.left {float:left; width:140px;}

Поэкспериментируйте с шириной, чтобы суммарная ширина колонок подходила к ширине сайдбара.

tiaurus

Автор n-wp.ru — блога о WordPress для новичков.

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

  1. Пира

    Не работает эта штукенция на wp 2.9

    Ответить
  2. Max1x9

    Подскажи как в 4 колонки вывести. В две получилось.

    Ответить
    1. Вы забыли волшебное слово. Да и на брудершафт я с вами не пил, чтобы вы мне тыкали.

      Ответить
  3. Max1x9

    Извините если обидел, ПОЖАЛУЙСТА!!!

    Ответить
  4. Игорь

    Отличная статья, спасибо. В итоге код выводит все категории в которых есть посты. А может сможешь подсказать:
    А если к примеру нужно вывести все названия категорий внутри поста которые принадлежат этому посту и вывести их в две колонки?
    К примеру есть таксономия ‘convenience’. Код покажет все названия таксономии.
    $atributes = wp_get_object_terms($post->ID, ‘convenience’);
    if( $atributes && ! is_wp_error($atributes) )
    {
    foreach( $atributes as $term )
    {
    echo $term->name
    }
    }

    Ответить