Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- $args = array(
- 'posts_per_page' => -1,
- 'post_type' => 'cpt_program',
- 'meta_query' => array(
- array(
- 'relation' => 'OR',
- array (
- 'key' => 'prog_ongoing',
- 'value' => true,
- 'compare' => '=',
- ),
- array (
- 'key' => 'prog_date_start',
- 'value' => date('Ymd'),
- 'compare' => '>=',
- ),
- ),
- ),
- 'orderby' => 'prog_date_start',
- 'order' => 'ASC',
- );
- // posts_orderby filter
- function order_by_custom_fields( $orderby ){
- $start_date = date('Ymd');
- global $wpdb;
- if( ! is_admin() ) :
- $orderby =
- "CASE
- WHEN {$wpdb->prefix}postmeta.meta_key = 'prog_date_start' AND {$wpdb->prefix}postmeta.meta_value >= $start_date THEN '1'
- WHEN ({$wpdb->prefix}postmeta.meta_key = 'prog_ongoing' AND {$wpdb->prefix}postmeta.meta_value) AND ({$wpdb->prefix}postmeta.meta_key = 'prog_date_start' AND {$wpdb->prefix}postmeta.meta_value) THEN '2'
- END DESC";
- endif;
- return $orderby;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement