Intereting Posts
Как переопределить тему родителя в дочерние темы functions.php Содержимое не отображается при использовании настраиваемого шаблона + боковой панели Сортировка по иерархическому значению двухуровневой таксономии, даже если второй уровень не установлен Weird undefined index: id, std notices. Как это исправить? Добавление бутстрапа в WordPress TwentySixteen Theme Есть ли способ сбросить все зарегистрированные боковые панели / виджеты? Показать идентификатор категории одного уровня Почему мои текстовые сообщения всегда возвращают одни и те же результаты? Общение между плагинами Сообщения не отображаются на странице Как закодировать пользовательские поля в шаблоне страницы? Удаление типа сообщения (типа) Каковы наилучшие практики при использовании AJAX в разработке плагинов? Сделать WordPress больше похожим на Jekyll (используя пакет wp-cli?) Объявление пользовательского типа продукта woocommerce как виртуального / загружаемого только

wordpress объединяет два запроса вместе в основном запросе

есть ли способ запросить метаданные? например, сначала загрузите все сообщения с наибольшей скоростью и после этого загрузите другие сообщения (не дублируйте, не меняйте «posts_per_page»).

прямо сейчас я использовал 2 запроса для этой проблемы, первый из них – это запрос для показа наиболее рейтинговых сообщений

$q = new WP_Query( array( 'posts_per_page'=> -1, 'post_type' => 'download', 'order' => 'DESC', 'meta_key' => 'ratings_score', 'orderby' => 'meta_value_num', ) ); if($q->have_posts()){while($q->have_posts()) : $q->the_post(); $sold_out = get_post_meta($post->ID, '_edd_download_sales',true); if($sold_out == 1){ continue; } $do_not_duplicate .= ",".get_the_ID(); $str = explode(",",$do_not_duplicate); endwhile; } if(is_home() && !is_paged()){ if($q->have_posts()) : while($q->have_posts()) : $q->the_post(); $sold_out = get_post_meta($post->ID, '_edd_download_sales',true); if($sold_out == 1){ continue; } $do_not_duplicate .= ",".get_the_ID(); $str = explode(",",$do_not_duplicate); $rs = get_post_meta($post->ID, 'ratings_score',true); $pid = get_the_ID(); //echo '<div class="btn btn-danger">post_id='.$pid. " - <strong>rateings_score = ".$rs.'</strong></div>'; get_template_part('content','download'); wp_reset_postdata(); endwhile; endif; } 

а второй показывает основной запрос

 if(have_posts() ) : while (have_posts()) : the_post(); $sold_out = get_post_meta($post->ID, '_edd_download_sales',true); $post_id = get_the_ID(); if($sold_out == 1){ continue; } if( in_array($post_id,$str) ) { continue; }else{ get_template_part('content','download'); } //the_meta(); endwhile; else: get_template_part('content','none'); endif;?> <?php if(function_exists('wp_pagenavi')){ wp_pagenavi(); }; 

примечание: у меня есть основной запрос к тому, что это происходит в "functions.php"

 function moortak_main_query( $query ) { if ( $query->is_home() && $query->is_main_query() ) { // Run only on the homepage $query->set('post_type','download'); $query->query_vars['posts_per_page'] = 15; // Show only 15 posts on the homepage only } } // Hook my above function to the pre_get_posts action add_action( 'pre_get_posts', 'moortak_main_query' ); 

Примечание: возможно, есть лучшее решение для этой проблемы, надеюсь, вы можете мне помочь.

Solutions Collecting From Web of "wordpress объединяет два запроса вместе в основном запросе"