Current Status: compatible

W3 Total Cache is one of the most complex and complete cache plugins for WordPress. Developed by the amazing BoldGrid company, it gives you granular control over different caching aspects. Let’s look at how it works with The Events Calendar and find out how to configure the plugin so that the calendar is properly cached for the fastest loading possible.

What you need

👋 Throughout this article, we’ll be using /events and /event for the calendar and event single slugs, respectively. Yours may differ depending on your plugin settings.

Minify settings

Once W3 Total Cache is installed and activated, head to PerformanceMinify from the WordPress dashboard. Look for the “Advanced” option on that page.

Use your Events Slug and Single Event Slug for the following option:

  • Never minify the following pages

Note that you can only use one slug per line as in our example.
Once you add your slugs you just need to use the Save Settings & Purge Caches button at the end of the section.

Let’s talk about minification

There are a few different minification options within this plugin. We strongly recommend you keep The Events Calendar JS files unminified. But you can allow W3 Total Cache to minify Pages and CSS, just check your Calendar page carefully to make sure everything looks okay.

This is everything that you need to prevent W3 Total Cache from caching any content created by The Events Calendar.

Cache Settings

Under Performance > Page Cache, you’ll also want to exclude your /event and /events pages from being cached.

Page cache settings with W3 Total Cache and The Events Calendar.

Plugin folders

Here is a list of the asset folders of each of our plugins that should be ignored.
You can use these values in Performance > Minify under the Advanced option.

Plugin NameAssets Folder
The Events Calendar/wp-content/plugins/the-events-calendar/(.*).css
/wp-content/plugins/the-events-calendar/(.*).js
Events Calendar Pro/wp-content/plugins/events-calendar-pro/(.*).css
/wp-content/plugins/events-calendar-pro/(.*).js
Events Tickets/wp-content/plugins/event-tickets/(.*).css
/wp-content/plugins/event-tickets/(.*).js
Events Tickets Plus/wp-content/plugins/event-tickets-plus/(.*).css
/wp-content/plugins/event-tickets-plus/(.*).js
Filter Bar/wp-content/plugins/the-events-calendar-filterbar/(.*).css
/wp-content/plugins/the-events-calendar-filterbar/(.*).js
Virtual Events/wp-content/plugins/events-virtual/(.*).css
/wp-content/plugins/events-virtual/(.*).js
Community Events/wp-content/plugins/the-events-calendar-community-events/(.*).css
/wp-content/plugins/the-events-calendar-community-events/(.*).js
Community Tickets/wp-content/plugins/the-events-calendar-community-events-tickets/(.*).css
/wp-content/plugins/the-events-calendar-community-events-tickets/(.*).js
Eventbrite Tickets/wp-content/plugins/the-events-calendar-eventbrite-tickets/(.*).css
/wp-content/plugins/the-events-calendar-eventbrite-tickets/(.*).js

To copy-paste

You can use the below to copy-paste all CSS and JavaScript asset resources easily.

/wp-content/plugins/the-events-calendar/(.*).css
/wp-content/plugins/events-calendar-pro/(.*).css
/wp-content/plugins/event-tickets/(.*).css
/wp-content/plugins/event-tickets-plus/(.*).css
/wp-content/plugins/the-events-calendar-filterbar/(.*).css
/wp-content/plugins/events-virtual/(.*).css
/wp-content/plugins/the-events-calendar-community-events/(.*).css
/wp-content/plugins/the-events-calendar-community-events-tickets/(.*).css
/wp-content/plugins/the-events-calendar-eventbrite-tickets/(.*).css

/wp-content/plugins/the-events-calendar/(.*).js
/wp-content/plugins/events-calendar-pro/(.*).js
/wp-content/plugins/event-tickets/(.*).js
/wp-content/plugins/event-tickets-plus/(.*).js
/wp-content/plugins/the-events-calendar-filterbar/(.*).js
/wp-content/plugins/events-virtual/(.*).js
/wp-content/plugins/the-events-calendar-community-events/(.*).js
/wp-content/plugins/the-events-calendar-community-events-tickets/(.*).js
/wp-content/plugins/the-events-calendar-eventbrite-tickets/(.*).js