Skip to content

Instantly share code, notes, and snippets.

@joshfeck
Last active October 12, 2021 23:39
Show Gist options
  • Star 4 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save joshfeck/6e33532c37a123bbf532 to your computer and use it in GitHub Desktop.
Save joshfeck/6e33532c37a123bbf532 to your computer and use it in GitHub Desktop.
simple EE4 event list query and display
<?php
// set up show expired = false
$where = array(
'Datetime.DTT_EVT_end' => array( '>=', current_time( 'mysql' )),
'status' => 'publish',
);
// run the query
if ( class_exists( 'EE_Registry' ) ) :
$events = EE_Registry::instance()->load_model( 'Event' )->get_all( array(
$where,
'limit' => 3,
'order_by' => 'Datetime.DTT_EVT_start',
'order' => 'ASC',
'group_by' => 'EVT_ID'
));
// the loop
if ( ! empty( $events )) {
echo '<ul>';
foreach ( $events as $event ) {
if ( $event instanceof EE_Event ) {
$venue_name = '';
$venues = $event->venues();
$venue = reset($venues);
if ($venue instanceof EE_Venue) {
$venue_id = $venue->id();
$venue_name = espresso_venue_name( $venue_id, 'none', false );
}
echo '<li>';
echo '<h2><a href="' . get_permalink( $event->ID() ) . '">' . $event->name() . '</a></h2>';
echo $venue_name;
echo '</li>';
}
}
echo '</ul>';
}
endif; ?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment