Back to Community

Why Are Ongoing and Multi-Day Events Not Showing in Your Calendar Views?

33 threads Sep 16, 2025 PluginThe events calendar

Content

If you're using The Events Calendar and find that events mysteriously vanish from your list or month view as soon as they start—even if they are multi-day events that are still ongoing—you're not alone. This is a common point of confusion for many users. This guide will explain why this happens and walk you through the most effective solutions.

Understanding the Default Behavior

By default, The Events Calendar is designed to show events that are starting in the future. The plugin's "Upcoming" views typically filter out any event whose start date is in the past. This is why an event that begins on a Monday will disappear from the main list view on Tuesday, even if it doesn't end until Wednesday.

Common Solutions and Workarounds

1. Check for a Caching Setting (A Quick Fix to Try First)

In some cases, a caching mechanism within the plugin itself can cause display issues, particularly in the Month View.

  • Navigate to your WordPress dashboard.
  • Go to Events > Settings > General.
  • Look for the option labeled "Enable the Month View Cache".
  • Uncheck this box and save your settings.
  • Clear any additional caching from your theme or plugin (e.g., WP Rocket, W3 Total Cache) and check if the events now display correctly.

2. Verify You Are Using The Events Calendar

It's important to confirm that the widget or shortcode you are using is actually from The Events Calendar and not a similarly named plugin like "Event Manager" or a feature built into your theme (e.g., the Enfold theme module). Using the wrong tool will lead to unexpected behavior. Check your plugin list in the WordPress admin to ensure you are configuring the correct one.

3. Custom Code for Advanced Control

If the above steps don't resolve the issue, the most reliable method is to use a custom filter. This code snippet will instruct the plugin to show events that are either upcoming or ongoing (i.e., the current date falls between the event's start and end date).

/**
 * Modify The Events Calendar query to include ongoing events.
 */
function bugwp_show_ongoing_events( $query ) {
    // Only modify the main events query
    if ( ! $query->is_main_query() || ! tribe_is_event_query() ) {
        return;
    }

    // Get the current meta query and prepare to modify it
    $meta_query = (array) $query->get( 'meta_query' ); 
    
    // Remove the default filter that hides past events
    $default_meta_query = tribe_remove_event_meta_query_hide_upcoming( $meta_query );
    
    if ( ! empty( $default_meta_query ) ) {
        $meta_query = $default_meta_query;
    }
    
    // Create a new query to find events that are ongoing or upcoming
    $new_meta_query = array(
        'relation' => 'OR',
        // Events that end on or after today
        array(
            'key' => '_EventEndDate',
            'value' => date( 'Y-m-d H:i:s' ),
            'compare' => '>=',
            'type' => 'DATETIME'
        )
    );
    
    // Merge the new condition with the existing meta query
    $meta_query[] = $new_meta_query;
    
    // Apply the modified meta query back to the main query
    $query->set( 'meta_query', $meta_query );
}
add_action( 'pre_get_posts', 'bugwp_show_ongoing_events', 50 );

How to use this code: Add it to your child theme's functions.php file or use a code snippets plugin. Always test code on a staging site first.

When to Consider a Different Approach

As noted in the sample threads, the team behind The Events Calendar has acknowledged that this can be a complex issue. If the custom code solution seems too technical, manually adjusting the start date of a multi-day event to the current day is a temporary workaround, though not ideal for long-term management.

This behavior is a known design characteristic of the plugin. For many users, implementing the custom code solution provides the precise control needed to ensure all relevant events are displayed to their visitors.

Related Support Threads Support