get_results(" SELECT post_id, meta_key FROM wp_postmeta WHERE ( (meta_key BETWEEN 'on_air_day_0' AND 'on_air_day_6') OR (meta_key BETWEEN 'rerun_day_0' AND 'rerun_day_6')) AND meta_value = '$day' "); foreach($today_broadcast as $broadcast) { $broadcast = (array) $broadcast; $post_id = $broadcast['post_id']; /* Estraggo tutti i metadati del post e li metto in un array associativo $broadcast_data*/ $meta_key_day = $broadcast['meta_key']; $meta_key = str_replace("day", "%", $meta_key_day); $meta_key = str_replace("_", "\\_", $meta_key); $metadata_query = $wpdb->get_results(" SELECT meta_key, meta_value FROM wp_postmeta WHERE post_id = '$post_id' AND meta_key LIKE '$meta_key' "); $broadcast_data = []; foreach ($metadata_query as $meta) { $key_exploded = explode("_", $meta->meta_key); $key = $key_exploded[count($key_exploded) - 2]; $broadcast_data[$key] = $meta->meta_value; } $cadence_string = (isset($broadcast_data["cadence"])) ? $broadcast_data["cadence"] : "1"; $startdate_string = (isset($broadcast_data["startdate"])) ? $broadcast_data["startdate"] : ""; if (have_to_run_this_week($startdate_string,(int) $cadence_string)) { $start_timestring = $broadcast_data["start"]; $end_timestring = $broadcast_data["end"]; $start = new DateTime("$start_timestring"); $end = new DateTime("$end_timestring"); if ($now >= $start && $now <= $end) { $done = true; return get_post($post_id)->post_title; break; } } } if (!$done) { return "Selezione musicale"; } } add_shortcode('whatplaynow', 'what_play_now'); ?>