Overview
The [eventkoi] shortcode pulls a single piece of event data, or several at once, into any page, post, widget, or template.
For example:
[eventkoi id="10" data="event_title"]
Attributes
| Attribute | Type | Default | What it does |
|---|---|---|---|
id | int | none | The event to pull data from. It’s also possible to use this shortcode without an id, see “Using without an id” below. |
data | string | none (required) | One key, or several comma-separated keys. See below for a complete list of data |
Using without an id
Inside an event template, or on an event’s own page, you can drop the id attribute entirely and EventKoi will automatically use the event currently being displayed:
[eventkoi data="event_details"]
This makes the shortcode reusable across every event without editing it each time.
It resolves the event in this order: an explicit id, then the event being displayed on the current page, then the event a query loop is currently on, then the active event context inside a template.
A hardcoded id pointing at a drafted or trashed event is refused, returning nothing, unless you are logged in as someone who can edit it.
Built-in keys
These are the keys that come with the EventKoi plugin:
Primary
event_title– the event title.event_details– the full event description.event_excerpt– the hand-written post excerpt only.event_location– the event’s location(s), formatted for display.event_image– the event’s image as a ready-made<img>tag.event_image_url– the event image’s raw URL, unwrapped automatically with no HTML wrapper, the same asevent_urlandevent_icalbelow.event_url– the event’s own page URL.event_ical– the iCal download link for the event.
Date & Time
event_datetime– formatted date and time range.event_datetime_with_summary– the above, plus the recurrence summary for a recurring event. Note, Lite does not include support for recurring events.event_date– date only.event_time– time only.event_timezone– the timezone the event is shown in.event_date_type–standardorrecurring. This is only available in Pro as Lite does not include support for recurring events.event_rulesummary– the recurrence rule summary text, for example “Repeats every week on Tuesday”. Empty for non-recurring events. This is only available in Pro as Lite does not include support for recurring events.event_date_year,event_date_month,event_date_month_short,event_date_day,event_date_day_name– You can use any of these individual date parts for more customised formatting for your webpages.event_date_iso– This outputs the event date as YYYY-MM-DD, which is useful when you need a machine-readable date, like for adatetimeattribute in custom HTML or a schema field. If not, event_date is sufficient.
Calendar
event_calendar– comma-separated calendar name(s) the event belongs to.event_calendar_link– the same, as clickable links.event_calendar_url– the URL of the event’s first calendar only, even if it belongs to several.
Location
event_gmap– an embedded Google Map for the location.location_1,location_2, and so on – individual locations, for events with more than one.
Tickets
Ticket shortcodes will only show up if you have enabled tickets in your event settings.
event_capacity– total event capacity-
event_capacity_remaining– remaining event capacity event_capacity_sold– capacity sold so farevent_sold_out– “Sold out” label. You can add this to your event page when you first create your event. It will not be visible until the event is sold out.event_low_stock– “Low stock” label, shown once remaining stock drops to 10% of capacity, with a minimum threshold of 5.event_ticket_count– number of active ticket types.event_ticket_summary– comma-separated list of active ticket type names.event_ticket_price_from,event_ticket_price_to,event_ticket_price_range– display the price range of all tickets.event_sales_start,event_sales_end– display the start and end dates of your ticket sales.
RSVP
RSVP shortcodes will only show up if you have enabled RSVPs in your event settings.
event_rsvp_capacity– total event rsvp capacityevent_rsvp_remaining– remaining event rsvp capacityevent_rsvp_going– only shown if the calendar’s RSVP settings have “show count” enabled, otherwise empty.event_rsvp_full– “RSVP full” label. You can add this to your event page when you first create your event. It will not be visible until the event is full.
Tickets & RSVPs
event_ticket_rsvp– automatically renders the Tickets widget, the RSVP widget, or a “From $X” price line, depending on the event’s attendance mode. Useful as a single frontend display key that adapts per event without you needing to check which mode it is in.
Examples
1) Basic
[eventkoi id="10" data="event_title"]
2) Multiple keys at once
[eventkoi id="10" data="event_title,event_date,event_location"]
3) Inside an event template, no id needed
[eventkoi data="event_details"]
4) Image as a bare URL
Useful for an alt text field or a dynamic-tag field in a page builder:
[eventkoi id="10" data="event_image_url"]
5) Sold-out label only where relevant
[eventkoi id="10" data="event_sold_out"]
Behavior notes
event_title,event_details, andevent_locationare the only 3 shortcodes with fallback text. This means they will always appear, even on an event where you have not input anything for those fields.event_titlefalls back to “Untitled event”,event_detailsfalls back to “No event details.”, andevent_locationfalls back to “No location available.”
event_calendar_urlonly ever returns the first calendar’s URL, even for an event assigned to several calendars (Pro).- Mixing valid and invalid keys in one
datalist just drops the invalid ones; it will not break the whole shortcode.