Backstory: we’re using the Events Aggregator add-on plugin from The Events Calendar to import events via a cron job. Problem is, the plugin code only checks against the UID– and the feed provider is crap, and changes out that “UNIQUE” ID around once per day. So we’re getting duplicate events imported like crazy.
I figured I could address this by checking not only against the UID, but also the post title, the event start date, and the event end date. It was not nearly as easy as I thought it would be, and I’ll document why below.