Title: query_posts Order By 2 meta values
Last modified: August 20, 2016

---

# query_posts Order By 2 meta values

 *  [davecc](https://wordpress.org/support/users/davecc/)
 * (@davecc)
 * [14 years, 7 months ago](https://wordpress.org/support/topic/query_posts-order-by-2-meta-values/)
 *     ```
       $args = array(
       			'meta_query' => array(
       					array(
       							'key' => 'event_date',
       							'value' => $today,
       							'compare' => '<='
       					)
       			),
       			'post_type' => 'post',
       			'meta_key' => 'event_date',
       			'orderby' => 'meta_value',
       			'order' => 'DESC'
       	);
       ```
   
 * This works fine for ordering by 1 custom field, how can I add a second order 
   by a custom field.

Viewing 3 replies - 1 through 3 (of 3 total)

 *  [NateJacobs](https://wordpress.org/support/users/natejacobs/)
 * (@natejacobs)
 * [14 years, 7 months ago](https://wordpress.org/support/topic/query_posts-order-by-2-meta-values/#post-2331351)
 * You’re on the right track. Just add a second array to your `meta_array`.
    [http://www.wpmods.com/use-meta_query-query-posts-postmeta/](http://www.wpmods.com/use-meta_query-query-posts-postmeta/)
   [http://scribu.net/wordpress/advanced-metadata-queries.html](http://scribu.net/wordpress/advanced-metadata-queries.html)
   [http://codex.wordpress.org/Class_Reference/WP_Query#Custom_Field_Parameters](http://codex.wordpress.org/Class_Reference/WP_Query#Custom_Field_Parameters)
 *     ```
       array(
             'key' => 'event_date',
             'value' => $today,
             'compare' => '<='
       ),
       array(
             'key' => 'SECOND KEY',
             'value' => SECOND VALUE,
             'compare' => 'COMPARISON VALUE'
       )
       ```
   
 *  Thread Starter [davecc](https://wordpress.org/support/users/davecc/)
 * (@davecc)
 * [14 years, 7 months ago](https://wordpress.org/support/topic/query_posts-order-by-2-meta-values/#post-2331440)
 * Hi Nate, I’ve tried that, but when I do that, it only shows posts that specifically
   match both meta_arrays.
 * All my posts have even dates, but some of them are also “top events”, so I want
   to sort all the posts by date and by top post, does that make sense?
 * Any advice would be greatly appreciated.
 *  Thread Starter [davecc](https://wordpress.org/support/users/davecc/)
 * (@davecc)
 * [14 years, 7 months ago](https://wordpress.org/support/topic/query_posts-order-by-2-meta-values/#post-2331450)
 * **event\*** dates

Viewing 3 replies - 1 through 3 (of 3 total)

The topic ‘query_posts Order By 2 meta values’ is closed to new replies.

## Tags

 * [query_posts](https://wordpress.org/support/topic-tag/query_posts/)

 * In: [Fixing WordPress](https://wordpress.org/support/forum/how-to-and-troubleshooting/)
 * 3 replies
 * 2 participants
 * Last reply from: [davecc](https://wordpress.org/support/users/davecc/)
 * Last activity: [14 years, 7 months ago](https://wordpress.org/support/topic/query_posts-order-by-2-meta-values/#post-2331450)
 * Status: not resolved

## Topics

### Topics with no replies

### Non-support topics

### Resolved topics

### Unresolved topics

### All topics
