Как разбить вывод категорий на несколько div?

У меня есть вывод категорий в box, мне необходимо если 3 категории уже вывелись, то он создавал новый блок box

На данный момент вывод у меня написан так:

<div class="slider">
    <div class="box">
        <?php wp_list_categories('orderby=name'); ?>
    </div>
</div>


А требуется реализовать такой вывод:

<div class="slider">
    <div class="box">
       <ul>
           <li>категория 1</li>
           <li>категория 2</li>
           <li>категория 3</li>
       </ul>
    </div>
    <div class="box">
        <ul>
            <li>категория 4</li>
            <li>категория 5</li>
            <li>категория 6</li>
        </ul>
     </div>
</div>


Вопрос как такое реализовать?
  • Вопрос задан
  • 37 просмотров
Решения вопроса 1
@easycode
не боюсь задавать глупые вопросы ))
<div class="slider">
	<div class="box">
	    <?php wp_list_categories('orderby=name');
	    $_cats = get_categories([
			'taxonomy'     => 'category',
			'orderby'      => 'name',
		]);
		if (is_array($_cats) and count($_cats)) {
			$_cats_ul = array_chunk($_cats, 3);
			if (count($_cats_ul)) {
				foreach ($_cats_ul as $_cat_items) {
					echo '<ul>';
					foreach ($_cat_items as $_item) {
						echo "<li>{$_item->name}</li>";
					}
					echo '</ul>';
				}
			}
		}
	    ?>
	</div>
</div>
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы