У меня есть рабочий цикл WordPress, который отображает все сообщения с определенным значением meta_query
. Единственная проблема заключается в том, что значения повторяются. Например, если у меня есть два сообщения со значением «Синий», тогда оба сообщения появляются в цикле, в результате чего «Синий» появляется дважды.
Мне бы хотелось, чтобы "Синий" появился один раз, а под ним - список всех заголовков сообщений с этим значением.
Вот мой текущий запрос:
<?php
$the_query = new WP_Query(array(
'post_type' => 'post',
'post_status' => 'publish',
'meta_key' => 'colors',
));
while ( $the_query->have_posts() ) : $the_query->the_post();
$colors = get_field('colors');
if( $colors ): foreach( $colors as $color ):
endforeach;
endif;
echo' <div><h2>'.$color.'</h2><div>'.get_the_title( $post_id ).'</div></div>';
endwhile; wp_reset_postdata();?>
Я попытался использовать массив для заголовков, но он только что возвратил "Массив"
$titles = get_the_title();
$title_names = array();
foreach ($titles as $title){
$title_names[] = get_the_title($id);}
эхо $title_names
Я думаю, мне нужен другой оператор if где-нибудь с массивом? Или, может быть, я подхожу к этому с неправильного направления.