Estoy tratando de crear un programa en vivo dentro de un sitio web, que debería mostrar el elemento activo/actual del programa. Mi configuración es la siguiente:
He creado un tipo de mensaje personalizado llamado: Events. El tipo de publicación contiene un conjunto de campos de campos personalizados avanzados que contiene dos campos Selector de fecha y hora: start_event_date y end_event_date. El formato de ambos campos es d/m/Y H:i.
Ahora quiero crear una consulta que recorra el tipo de publicación Eventos, enumerando todas las publicaciones donde $now se encuentra dentro start_event_date y end_event_date (que solo será el elemento activo del programa). Mi zona horaria se define usando date_default_timezone_set("Europe/Amsterdam"); y tengo una variable para la hora actual $nowTambién en d/m/Y H:i.
<?php
$args = array(
'post_type' => 'events',
'post_status' => 'publish',
'posts_per_page' => -1,
'order' => 'ASC',
);
$loop = new WP_Query( $args );
?>
<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
<?php
date_default_timezone_set("Europe/Amsterdam");
$time = date('d/m/Y H:i');
$start_date = get_field('event_start_date');
$end_date = get_field('event_end_date');
if ( $time >= $start_date && $time <= $end_date ) { ?>
<li><?php echo get_the_title(); ?></li>
<?php }
?>
<?php endwhile; ?>
Desafortunadamente, esto no funciona y en realidad no tengo idea de cómo implementar la condición para enumerar solo los elementos donde $now está dentro $start_date y $end_date.
Cualquier idea sería apreciada. Gracias por adelantado.
.