plugin-icon

Designed2Use Events

A standalone WordPress events calendar with month + list views, venue archive, iCal feeds, and optional WooCommerce ticketing.
Version
1.0.4
Last updated
Jun 29, 2026
Designed2Use Events

Designed2Use Events is a self-contained events calendar for WordPress. Events and venues are custom post types — not products — so the calendar works fully on its own. When WooCommerce is active, an opt-in ticketing module turns events into purchasable tickets with attendee capture, capacity tracking, sale windows and refund-aware capacity release.

Calendar without WooCommerce

  • Events and venues as custom post types, with categories and tags
  • Frontend Pages for the calendar (/events/) and the venues archive (/venues/) — created on activation and rendered through your active theme, no template takeover
  • Month + List calendar views with venue / category / featured filters, prev / next month navigation, and a shareable URL for every state
  • Server-rendered first paint plus a vanilla-JS REST-driven view swap — no JS framework, no build step
  • Single-event pages with schedule, venue, address and an embedded OpenStreetMap (Leaflet) map
  • Single-venue pages with address, map and upcoming events
  • Multi-day events span every day they cover in the month view, with a “Through {date}” hint in the list view
  • JSON-LD Event schema in the document <head> for Rich Results
  • Per-event .ics download and a subscribable iCal feed (/event/{slug}/feed/ics/)
  • Theme overrides — copy any template part to your-theme/designed2use-events/{name}.php
  • Five free shortcodes ([d2uevents_calendar], [d2uevents_list], [d2uevents_event], [d2uevents_venues]) and matching server-rendered blocks under an “Events shortcodes” inserter category
  • REST endpoint /wp-json/d2uevents/v1/occurrences for headless use

Optional WooCommerce ticketing

When WooCommerce is active, the Tickets meta box on the event editor appears and the rest of the integration switches on:

  • Create a ticket product directly from the event, or link an existing product
  • Inline editor on the event admin for name / description / price / per-ticket capacity / sale window — no round-trip to the product editor for the common fields
  • Single-cap cascade: per-ticket event venue settings (first set value wins) so an admin can choose where to track capacity
  • Sale window with event-end fallback — the form is replaced with a “Tickets go on sale on X” or “Ticket sales have ended” notice as appropriate
  • Atomic capacity decrement at order completion — concurrent oversells collapse to exactly one winner; the rejected order is recorded as an order note and a debug-log entry
  • Refund-aware capacity release — the same counter the booking incremented is released
  • Per-ticket attendee capture (name + email) on the event page — block cart / block checkout / classic cart all show the data, no React build step required
  • Cart-aware quantity input — the visitor cannot purchase more tickets than remain
  • Block cart / mini-cart quantity is locked at the Store API schema level so attendee mappings cannot be quietly broken from the cart
  • HPOS (High-Performance Order Storage) compatible
  • Per-event Attendees admin screen with a CSV export of every booking
  • WooCommerce privacy-export and erasure integration — attendee personal data flows through the standard “export / erase personal data” tools
  • My-account view-order page lets the customer edit attendee details until a configurable cutoff before the event

Developer friendly

  • Public d2uevents_ action / filter API — a documented contract for third-party developers, not just the free Pro boundary (docs/hooks.md)
  • Five shortcodes that mirror every server-rendered block (docs/shortcodes.md)
  • Filterable template loader — every part is overridable from the active theme (docs/templates.md)
  • PSR-4 autoloader, namespaced D2UEvents\
  • WooCommerce ticketing module is fully isolated — nothing outside it references a WooCommerce symbol, so the plugin works without WooCommerce installed at all

Designed2Use Events Pro — Coming Soon!

The free plugin is the real product, not a teaser — every feature above stays free, forever. Pro adds power alongside it, never gating what you already have. Here’s what’s on the way:

  • Recurring events — daily, weekly, monthly and custom patterns, with proper series editing.
  • Multi-tier tickets — early-bird, standard and VIP pricing tiers, with per-occurrence inventory.
  • Registration form builder — collect exactly the attendee information you need.
  • QR check-in — scan attendees in at the door from your phone.
  • Organizers — give each event an organizer profile with their own details and listings.
  • Week, Day and Map views — more ways for visitors to browse what’s on.
  • Importer — bring your events across from The Events Calendar.
  • Automatic updates — licensed, with one-click updates straight from your dashboard.

Pro hooks into exactly the same public d2uevents_ API a third-party add-on would — no privileged access, no patching of free internals. See designed2use.co.uk/plugins/designed2use-events/.

External services

This plugin relies on two OpenStreetMap services to provide venue geocoding and maps. Both are optional to how you use the plugin and can be disabled or replaced (see below).

1. OpenStreetMap Nominatim (address geocoding)

When you create or edit a venue and enter an address but leave the latitude and longitude blank, the plugin sends that address to the OpenStreetMap Nominatim service to look up its coordinates. The request includes the address you entered and a User-Agent identifying this plugin and your site’s URL (required by Nominatim’s usage policy). This happens only in the admin when a venue is saved, is throttled to one request per second, and results are cached for seven days. No request is sent if you fill in the latitude/longitude yourself, or if you replace the provider via the d2uevents_geocode_provider filter.

  • Service: OpenStreetMap Nominatim — https://nominatim.org/
  • Usage policy: https://operations.osmfoundation.org/policies/nominatim/
  • Privacy policy: https://wiki.osmfoundation.org/wiki/Privacy_Policy

2. OpenStreetMap map tiles (Leaflet maps)

Single venue pages, the venues archive and the venue map display an interactive map rendered with the bundled Leaflet library. The map image tiles are loaded in the visitor’s browser from the OpenStreetMap tile servers, which receive the visitor’s IP address and the map area being viewed. The tile source is configurable under Events Settings (the “Map tile URL”), so you may point it at your own or a third-party tile provider, and maps are only shown on pages that display one.

  • Service: OpenStreetMap tile servers — https://www.openstreetmap.org/
  • Tile usage policy: https://operations.osmfoundation.org/policies/tiles/
  • Privacy policy: https://wiki.osmfoundation.org/wiki/Privacy_Policy
Freeon paid plans
Tested up to
WordPress 7.0
This plugin is available for download for your site.