Размещение ссылок меню в несколько столбиков

28.01.2011

Бывают ситуации или говоря иными словами дизайн, когда дизайнер или заказчик хочет, что бы ссылки располагались в несколько столбиков, например ссылки на категории(wp_list_categories();), теги или последние записи.

Однако, поскольку скажем категории выводятся посредством функции, единым блоком и мы не можем контролировать их html код в полной мере, приходится изощряться и идти на маленькие хитрости.

Для тех у кого с хитростью или знаниями в php проблема и выкладывается этот код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
$columns = 5; //устанавливаем нужное число колонок
$cat = wp_list_categories('echo=0&title_li=&depth=1'); //код для вывода
//категорий с необходимыми параметрами
$item = explode('</li>
 
', $cat); //разбиваем строку с кодом код на массив
$total_items = count($item); //считаем число получившихся элементов
$item_per_col = ceil($total_items / $columns); //считаем сколько
//элементов должно быть в одной колонке
$list_number = 1;
$current_item = 0;
?>
<ul class="columnized" id="cat-col-<?php echo $list_number; ?>">
<?php
foreach($item as $category) {
	$current_item++;
	if($current_item % $item_per_col == 0) {
		$list_number++;
		echo $category;
		echo '</li>
</ul>
<ul class="columnized" id="cat-col-' . $list_number . '">';
	} else {
		echo $category.'</li>
 
';
	}
}
?>
</ul>

Парсер кода немного некорректно обрабатывает код, там где 6 строка пустая все пустое пространство надо удалить и вуаля, необходимое число столбцов.

Смотреть все приёмы и трюки Wordpress

Комментарии

    AlexFly 4.5.2012 в 17:04 Ответить

    Здравствуйте! А куда код втыкать?