Я делаю простой WP_query для трех типов сообщений: «post», «sal», «product» («product» – это тип публикации по умолчанию для WooCommerce, а «sal» – это настраиваемый тип публикации).
Странно, что запрос с двумя типами сообщений («post», «sal») возвращает больше (!!) значений, чем исходный запрос с тремя типами сообщений.
Является ли это возможным? Я проверяю код снова и снова, и я не нашел ошибку. Некоторый ключ к исследованиям будет хорошим.
Запрос и цикл:
<?php if (is_home()) { $colores_args = array ( 'post_type' => array( 'post', 'sal', 'product' ), 'meta_key' => 'portada', 'meta_value' => 'yes', ); $colores_query = new WP_Query( $colores_args ); ?> <div class="colores"> <?php $colores = array(); // The Loop if ( $colores_query->have_posts() ) { while ( $colores_query->have_posts() ) { $colores_query->the_post(); $este_color = get_field('color'); $colores[] = $este_color; } } else { // no posts found echo 'no'; } // Restore original Post Data wp_reset_postdata(); $colores_uniq = array_unique($colores); foreach ($colores_uniq as $color) { ?> <a class="boton-color" style="background-color:<?php echo $color;?>"> </a> <?php } ?> </div> <?php } ?>
Моя ошибка: отсутствует
'posts_per_page' => -1,
в запросе