Overview
The Gravity Forms Events Calendar Add-On gives a site its own calendar of events, venues, and organizers. Visitors browse month, list, and day views, open an event, and register with the form attached to that event.
Each registration is stored as a Gravity Forms entry linked to the event and the specific date. Recurring events keep a separate spot count for every occurrence. A full date shows a notice in place of the form. Product and payment fields on that form sell tickets through any Gravity Forms payment add-on.
You set the calendar up under Forms → Settings → Events Calendar, then add events under Events. A Create Event feed can also turn a submission into a pending, draft, or published event, and it reuses a venue or organizer when that name already exists.
Key Benefits
- Month, list, and day calendars on the events archive, in the Events Calendar block, and with the [gf_events] shortcode
- Daily, weekly, monthly, and yearly recurrence, with skipped dates and a way to edit one occurrence on its own
- A registration form and a capacity for each event, counted separately for every date
- An Event field that lists upcoming dates on the form and leaves out dates that are full
- Event merge tags for the title, date, venue, and calendar links in notifications and confirmations
- Ticket sales through the product and payment fields already on the form
- Community submissions that create events for review, with the venue and organizer filled in from the form
- Google Calendar, Outlook, and iCal links on each event, plus an iCal feed for the whole calendar
- An importer that copies events, venues, organizers, categories, and recurring series from The Events Calendar
How It Works
Open Forms → Settings → Events Calendar. Choose the events URL slug, the views visitors can switch between, and how venue maps should open.
Add an event under Events → Add New. In Event Details, set the start and end, time zone, venue, organizers, and cost. Use Recurrence when the event repeats. In the Registration box, choose the registration form and, when you want a limit, the capacity per occurrence.
To let visitors suggest events, open the form’s Settings → Events Calendar → Add New. Name the feed, set Event status to Pending review, and map the title, start date, venue, and organizer. Each submission creates an event and adds a note on the entry with links to review it.
On the event page, the visitor sees the date, venue, and Add to calendar links, then submits the registration form. The entry stays linked to that event and date, and the Registration box lists who has signed up.
Please log in to access this content. Log in
Requirements
- WordPress 6.5 or later
- Gravity Forms 2.9.24 or later
- PHP 7.4 or later
- A Gravity Forms payment add-on when selling tickets
Changelog
0.1.0-alpha.1
- First alpha release of the Gravity Forms Events Calendar Add-On.
- Added events, venues, organizers and event categories, with an event editor for dates, time zones, all-day events, venues, organizers, cost, website and featured events.
- Added month, list and day calendar views on the events archive, an Events Calendar block and the [gf_events] shortcode, with view switching and paging that work with or without JavaScript.
- View more
Documentation
Events Calendar Add-On Documentation
This section covers adding events, showing the calendar, taking registrations, accepting event submissions and moving from The Events Calendar. Requirements and known limits are covered outside this section.
Add an event
Open Events → Add New, give the event a title and a description, then fill in Event Details:
- Start and End are dates and times in the event’s Time zone. Turn on All-day event to hide the times.
- Venue lists the venues you’ve already saved. You can also type a new venue name, and it is created when you save the event. Organizers works the same way, and an event can have more than one organizer.
- Cost, Event website and Featured are optional. Featured events are highlighted in calendar views and can be filtered on their own.
Group events with Events → Categories. Venues and organizers have their own screens under Events, with addresses, phone numbers, websites and emails.
Repeat an event
Use the Recurrence box when an event happens more than once.
- Repeats can be daily, weekly, monthly or yearly, every one or more intervals.
- Weekly events can repeat on several weekdays.
- Monthly events can repeat on the Same day of the month or the Same weekday (e.g. first Tuesday). If the event falls on the fifth week of a month, it repeats on the last weekday.
- Ends can be never, after a number of occurrences, or on a date.
- Skip dates takes one date per line (YYYY-MM-DD) for dates when the event does not happen.
Next occurrences previews upcoming dates. Click Edit only this occurrence to split one date into its own event. That date is then skipped in the series.
Show the calendar
The events archive at /events/ shows the calendar with your default view. Visitors can switch between the views you enabled and page through months or days.
To place a calendar anywhere else:
- Add the Events Calendar block. Choose the view, a category, whether to show only featured events, the number of events for the list view, and whether to show the view switcher.
- Or use the shortcode, for example
[gf_events view="list" category="workshops" limit="5" switcher="false"]. Other attributes arevenue,featuredanddate(YYYY-MM-DD).
Each event page shows the date, venue with a map, organizers, cost, other upcoming dates and Add to calendar links for Google Calendar, Outlook and iCal. The calendar’s Subscribe to calendar (iCal) link gives visitors a feed they can add to their calendar app.
Take registrations
- Build a Gravity Forms form for registrations, for example with name and email fields.
- Edit the event and choose that form under Registration form in the Registration box.
- Optionally set Capacity per occurrence. Leave it blank for unlimited.
The form is shown on the event page. Each entry is linked to the event and to the date the visitor registered for, so recurring events track capacity for each date separately. When an occurrence is full, the form is replaced with a notice. The Registration box shows how many people have registered for upcoming dates and links to their entries.
To let visitors pick the event on the form itself, add the Event field from Advanced Fields. It lists upcoming dates of events that use this form, or of events with no registration form set, and hides dates that are full.
Use these merge tags in notifications and confirmations: {event_title}, {event_date}, {event_start}, {event_end}, {event_venue}, {event_url}, {event_ics_url} and {event_google_url}.
Paid registrations work with Gravity Forms payment add-ons. Add product fields to the form as usual.
Accept event submissions
Use a feed when visitors should be able to suggest events.
- Build a form with at least a title, a start date and, optionally, a start time, end date, end time, description, venue, organizer and image upload fields.
- Open the form’s Settings → Events Calendar → Add New.
- Set Event status. Pending review is the default, so nothing is published until you approve it.
- Map Title and Start date, plus any other fields you collected. Default length (minutes) sets the end time when no end is mapped.
- Optionally map the Venue and Organizer fields. A venue or organizer with the same name is reused; otherwise a new one is created with the event’s status.
Each submission creates one event, and the entry gets a note that links to it. Use {created_event_url} and {created_event_edit_url} in admin notifications to review new events.
Import from The Events Calendar
Open Events → Import from TEC. The page lists how many events, venues, organizers and categories were found, and Start import copies them in batches. You can also run wp gf-events import-tec from WP-CLI (--dry-run previews the counts).
- The import can run again safely. Items already imported are skipped.
- TEC does not have to be active, because the importer reads its data straight from the database.
- Simple recurring series are imported as one recurring event. Series this add-on can’t represent, such as multiple rules or exclusion rules other than dates, are imported as one event per date. The final report lists how many of each were created.
- TEC data is not changed or deleted. Check the imported events before you deactivate TEC.








