I have deeply conflicted feelings about The Events Calendar. Most people I talk to feel the same way.
- It integrates with the block editor.
- It provides all the basic features of an events calendar I want: event posts with metadata for time, location, organizer, all displayed in an “Upcoming Events” list or month-view grid.
- It includes a wide variety of useful add-ons for virtual events, event RSVPs and paid ticketing, public event submissions, and event-related emails.
- It looks pretty good out of the box.
- The template override system is extremely powerful and fairly fine-grained.
- I didn’t say that the block editor integration was good though… The blocks are clunky and could be so much better. They don’t support a lot of basic block editor features and don’t really feel integrated into the block editor.
- The design is very opinionated out of the box and customizing the design is hard. The styles don’t use the “cascade” very well and the plugin CSS code feels very haphazard to review.
- The add-ons often don’t seem to work very well together. I’ve run into countless bugs that feel nearly impossible to replicate. The plugin development feels more committed to new features than providing a stable environment I trust.
But since the plugin gives me the features I need and I can’t find a better alternative, I’m still sticking with it and hesitantly recommending it for the foreseeable future.
Sharing my fixes
That’s why I’ve built something awesome to share with everyone who is as frustrated as I am. I’ve put in the time to collect many of the fixes I use to improve The Events Calendar on sites I build and published them for anyone else to use and adapt.
These files have been up and public for a while. And credit to The Events Calendar for actually taking some of my recommended changes and incorporating them directly into the plugin. I appreciate that they are listening.
Now, I’ve transitioned all the files to a full Github repository so I can more easily manage it, accept feedback, and review change requests: The Events Calendar Reset on Github. I call it the “TEC Reset” for short.
The main tool is the
README.md file that includes a long checklist of things to do:
- Pull in the two stylesheets from the project that adjust the plugin to inherit more styles from the WordPress theme and WordPress itself
- Reminders to adjust a number of templates to use the correct theme HTML and fix some accessibility problems in the plugin’s template files
- A number of useful code snippets to change some annoying defaults of the plugin
Bringing things together
What’s extra fun about this project is the way it ties together so much of my work. The list of changes I make includes installing my Post Type Archive Descriptions plugin that can let you automatically write some introductory text at the top of the Calendar or Upcoming Events page in The Events Calendar.
And as of the 2.0.0 version of the TEC Reset project I just published, the CSS files remap the default spacing values—used to define the margin between elements and padding within elements—to use the WordPress spacing scale that was developed partially in the wake of my proposal last year for more interoperable styles in WordPress.
Oh look! A soapbox for me to stand on
Regarding the spacing scale: This is showing what it can do if plugin maker’s buy-in to using WordPress-provided styles. The spacing values that I output with the TEC Reset are first defined by WordPress (so all sites use the same scale), but can be customized by any theme using a
What this means is that The Events Calendar can write its own CSS that will use a site’s specific spacing values. When it’s installed, it automatically fits in because the spacing within the events and the spacing in other parts of the site is literally based on the same values! If more of the major plugins with significant front-end output like WooCommerce, Gravity Forms, BuddyPress, etc. wrote styles like this, we would start to see tremendous value that benefits sites by helping them look more unique through standardization.
This is also why we still really need to find a way to standardize color naming in WordPress!
Anyway, please enjoy the TEC Reset
But back to our regularly scheduled programming. I know a lot of folks have found these styles useful. Now, they are easier to find, easier to use, and I’m excited to hear if people have any ideas for making them even better.
If you developer custom WordPress sites with The Events Calendar, I bet you’ll like the TEC Reset.