function course_dates_shortcode($atts) {
global $post;
if (!isset($post) || !is_object($post) || $post->post_type !== \’course\’) {
return \’\’;
}
$start_time = get_field(\’start_time\’, $post->ID);
$end_time = get_field(\’end_time\’, $post->ID);
if (!$start_time || !$end_time) return \’\’;
$format = \’l F j, Y\’;
$output = \”Dates:
\”;
// Loop through start_date and session_2 to session_16
for ($i = 1; $i <= 16; $i++) {
$field_name = $i === 1 ? \'start_date\' : \"session_{$i}\";
$raw_date = get_field($field_name, $post->ID);
if ($raw_date) {
$dt = DateTime::createFromFormat($format, $raw_date);
if ($dt) {
$output .= $dt->format($format) . \” {$start_time} – {$end_time}
\”;
}
}
}
return $output;
}
add_shortcode(\’course_dates\’, \’course_dates_shortcode\’);