Я разрабатываю страницу, которая требует от меня отображения списка категорий для пользовательского типа записи в раскрывающемся списке в стиле аккордеона.Название категории будет выступать в качестве названия аккордеона, а содержимое должно быть сообщениями, связанными с каждой конкретной категорией.Изображение ниже суммирует то, что я в конечном счете достигну.
![Bootstrap Accordion drop-down for categories mock-up](https://i.stack.imgur.com/yMSg0.png)
Я смог успешно извлечь названия категорий и назначить их для выпадающего списка аккордеона,но происходит то, что в моем коде добавляются новые ячейки, хотя две записи связаны с похожим названием категории.
Я чувствую, чтокак будто я так близко!Вот фрагмент того, как мой код выглядит до сих пор.
<div id="accordion" class="col-8" role="tablist" aria-multiselectable="true">
<?php
$args = array(
'post_type' => 'our_work',
'posts_per_page' => -1,
'orderby' => 'category',
'hide_empty' => 0,
);
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
?>
<div class="card box-shadow">
<div class="card-header" role="tab" id="<?php the_ID(); ?>">
<h5 class="mb-0">
<a data-toggle="collapse" data-parent="#accordion" href="#collapse<?php the_ID(); ?>"
aria-expanded="false" aria-controls="collapseOne">
<?php
foreach((get_the_category()) as $category) {
echo $category->cat_name . ' ';
}
?>
</a>
</h5>
</div>
<div id="collapse<?php the_ID(); ?>" style="transition: all 0.5s ease 0s;" class="collapse nomnom"
role="tabpanel" aria-labelledby="heading<?php the_ID(); ?>">
<div class="card-block">
<h1><?php the_title(); ?></h1>
<p><?php the_Content(); ?></p>
</div>
</div>
</div>
<?php endwhile; wp_reset_query(); ?>
</div>
Я подозреваю, что происходит то, что у меня не правильно настроен цикл и в результате добавляется новая ячейка.
Я все еще плохо знаком с работой с «циклом WordPress», поэтому любые советы будут с благодарностью приняты.