Можно ли отсортировать по наибольшему числу внутри l oop? Я использую WP_Query
, и внутри него у меня есть собственный запрос, чтобы получить общее количество компаний по каждой информации. Я уже получаю общее количество по каждой информации, но моя проблема сейчас в том, как я могу отсортировать их по возрастанию. Вот мой пример кода ниже:
$args = array('post_type' => 'stacks');
$the_query = new WP_Query( $args );
// The Loop
if ( $the_query->have_posts() ) {
while ( $the_query->have_posts() ) {
$the_query->the_post();
$exact_curr_id = '"'.get_the_ID().'"';
$get_companies = $wpdb->get_results( "SELECT ID as company_ID, post_title as company_name, post_status as company_status FROM {$wpdb->prefix}posts tbl1
LEFT JOIN {$wpdb->prefix}postmeta as tbl2 ON tbl1.ID=tbl2.post_id AND tbl2.meta_key = 'vendor-featured'
LEFT JOIN {$wpdb->prefix}postmeta as tbl3 ON tbl1.ID=tbl3.post_id AND tbl3.meta_key = 'vendor-ap'
LEFT JOIN {$wpdb->prefix}postmeta as tbl4 ON tbl1.ID=tbl4.post_id AND tbl4.meta_key = 'vendor-as'
WHERE (tbl1.post_type = 'company-stacks' AND tbl1.post_status = 'publish'
AND tbl2.meta_value LIKE '%$exact_curr_id%'
OR tbl3.meta_value LIKE '%$exact_curr_id%'
OR tbl4.meta_value LIKE '%$exact_curr_id%')
GROUP BY tbl1.ID", OBJECT);
$group_companies = array();
$get_company_count = 0;
if($get_companies){
foreach($get_companies as $company){
//group each company id
$group_companies[] = ($company->company_ID);
}
if($group_companies){
//count total each group
$get_company_count = count($group_companies);
}
//Need to sort here by highest number to lowest
if(!empty($get_company_count)){
?>
<h4 class="ms-title"><?php echo get_the_title(); ?></h4>
<p class="total-companies">Number of companies (<?php echo $get_company_count; ?>)</p>
<?php
}
}//end get company count
} // end while
} // endif
// Reset Post Data
wp_reset_postdata();