Do you want users to submit events to a calendar on your website?
Letting users submit their own events is an awesome way to let your users build a community calendar.
In this article, we’ll show you how to create a WordPress events calendar so your visitors can freely submit events to your site.
What Is Frontend Event Calendar Submission?
Frontend submission lets you accept event listings without making the user log in. That makes it super easy for people to contribute events to your WordPress calendar.
Using this combination of plugins, it’s easy to take frontend submissions for:
- Local community events
- Film screenings
- Street parties
- Concerts and festivals
- Sports matches
- …and more.
You could also make money online by charging for event listings posted to your website’s calendar or add payment buttons to sell tickets.
How to Create a User Submitted Events Calendar Form in WordPress
In This Article
- Step 1: Install the WPForms Plugin
- Step 2: Create a Form for User Submitted Events
- Step 3: Install The Events Calendar Plugin
- Step 4: Connect Your Form to Your WordPress Event Calendar
- Step 5: Customize Confirmation Message After Event Submission
- Step 6: Publish Your User Submitted Events Form
- Step 7: Review and Publish Event Calendar Submissions
- FAQ on User Submitted Events Calendar
Step 1: Install the WPForms Plugin
The first thing you’ll need to do is install and activate the WPForms plugin. WPForms is the best WordPress form builder plugin. If you’re new to WordPress, here’s a step by step guide on how to install a WordPress plugin.
Next, you’ll need to install and activate the Post Submissions addon for WPForms. The addon is available with the Pro version or higher. This addon will add frontend post submission functionality to your WordPress site.
To do this, go to WPForms » Addons.
Scroll down until you find the one labeled Post Submissions.
Click Install Addon and then Activate.
That’s it for step 1. Now it’s time to make your event submission form.
Step 2: Create a Form for User Submitted Events
WPForms makes it easy to create any kind of form for your website.
When you install the Post Submissions addon, you’ll get a new template called Blog Post Submission Form template. Note that the template you need has the Addon label to show that it’s specifically designed to work with the Post Submissions addon:
Next, let’s rename the fields to turn this into an event submission form:
- Post Title: Rename as Event Title
- Featured Image: Rename as Promotional Image
- Post Excerpt: Rename as Short Event Description
Now we need to add some more fields to the form.
First, let’s add a Rich Text field so that your visitor can add fully formatted event listings with images.
Delete the existing text field for Post Content and then drag a Rich Text field in its place. You’ll want to name it Full Event Description.
In the Field Options for the Rich Text field, we turned on all 3 of these settings:
- Allow Media Uploads: this will let your visitor add images to their event listing
- Store files in WordPress Media Library: adds uploaded images to the Media Library in WordPress
- And we also set the field as Required.
Now let’s add two Date/Time fields: one is for the event start time and one for the event end time. Using these fields, visitors can add either single-day or multi-day events to your WordPress calendar.
On both the Date / Time fields, it’s a good idea to Disable Past Dates. You’ll find this in the Advanced Options for the Date / Time field.
Disable Past Dates will mean all of your new events have to have a future date. That can help to catch mistakes, like accidentally selecting the wrong year.
OK, we’re done. Let’s click Save.
Step 3: Install The Events Calendar Plugin
Next, you’ll need to install a WordPress events calendar plugin. The Events Calendar is a free plugin for WordPress websites that works great with WPForms.
The Events Calendar plugin creates a custom post type called Events that will appear in your WordPress dashboard.
When a visitor submits your form, it’ll create a new event post. We’ll be using some metadata on the form that will tell The Events Calendar how to list it.
Let’s get started with our WordPress event calendar now.
The free version of The Events Calendar lets your users create single local community events. You can create recurring events with The Events Calendar Pro.
To install it, go to Plugins » Add New in your WordPress dashboard and search for The Events Calendar.
Click Install Now to install the plugin.
Activate The Events Calendar plugin now and run through the settings. It’s important to do this now so that your Events post type is ready for the next step.
Now we’re going to create a connection between your form and your WordPress events plugin.
Step 4: Connect Your Form to Your WordPress Event Calendar
After setting up The Events Calendar plugin, you need to connect the form you’ve created to your calendar.
Open up the event submission form you created earlier. Then go to Settings » Post Submissions in the form editor and Enable Post Submissions.
Next, you’ll want to match your form fields with the fields that The Events Calendar is looking for.
Since we used the Blog Post Submission Form template, some of this mapping will already be done. However, there are a couple of things that you need to set manually.
Set up your mapping as follows:
- Post Title mapped to Event Title
- Post Content mapped to Full Event Description, which is the Rich Text field we added
- Post Excerpt maps to Short Event Description
- Post Featured Image maps to Promotional Image
Further down, we also mapped these fields from the form to the events post:
- Post Type will likely be set to Posts, so we need to change this to Events
- Post Status should be set as Pending Review
- Current User can be anything you like – we mapped it to our Site Administrator account in WordPress.
The Pending Review status will allow us to approve each event submission before it goes live. You’ll definitely want to use this if you’re taking payment for your event listings so that you can check payment was made successfully.
If you want to publish events as soon as they’re submitted, we’ll show you how in the FAQ section at the end of this article.
Setting Up the Custom Post Meta
Just 1 more step. To map the date and time, scroll down to the Custom Post Meta section.
We’re going to add some code here to map the start and end times in your form to the start and end times in The Events Calendar:
- _EventStartDate is mapped to Start Time
- _EventEndDate is mapped to End Time
In fact, the Custom Post Meta section is handy for all kinds of custom fields. Check out the FAQ section at the end of this article for more fields you can use here.
We’re done now, so let’s click Save.
Step 5: Customize Confirmation Message After Event Submission
Before you publish your event submission form, it’s a good idea to change the default thank you message that your users will see.
You can do this by going to Settings » Confirmations.
In the preview panel, customize your message in any way you like.
WPForms gives you lots of options after someone submits an event to your website’s calendar. You can also:
- Use conditional confirmations to show a different message depending on the event type
- Forward your visitor to a designated thank you page
- Forward them to a separate website.
For help with form confirmations:
- Check out this helpful documentation on how to set up form confirmations in WordPress.
- If you want more than one confirmation, check out how to create multiple form confirmations in WPForms.
Don’t forget to let your users preview their entry before submitting the form. Here’s our guide showing you how to preview a form entry before submitting it.
Step 6: Publish Your User Submitted Events Form
OK, now we’re ready to publish the event on your WordPress site!
WPForms allows you to add your forms in different ways, like:
- Embed wizard
- WPForms block in the block editor
- Sidebar widget
- Elementor form module
- Divi embed
- SeedProd module
Let’s add your event registration form with the Embed wizard in this example. This will automatically create a new page for your visitors to add user submitted events.
At the top of the form builder window, click Embed.
Now click Create New Page.
And finally, type in a name for your page and click the orange Let’s Go button to create it.
Now all you need to do is hit Publish to publish your form.
And that’s it! Your form is live. You can use CSS to style the form further if you want to.
Now visitors can submit events through your form, and you can manage them using The Events Calendar plugin.
Step 7: Review and Publish Event Calendar Submissions
Awesome! Now we’ve published your user submitted events form in WordPress, let’s test it out.
Here’s what ours looks like on the frontend:
Go ahead and submit the form.
To review the event, go to Events in the WordPress dashboard.
You’ll see that any submitted events that are submitted through your calendar form will be listed as Pending. This means they need to be approved by you in the events manager screen before they appear on your site’s calendar.
To edit events, click Edit underneath the event title.
Preview the submission; with the rich text field of WPForms, you can view the complete event details, including images, within your dashboard.
A special note of the Time & Date near the bottom of your screen. If you mapped this correctly, it’d show the event in your WordPress site’s timezone.
When you’re finished reviewing all the event details, click Publish. You’ll see the listed in your new events calendar at
And there you have it! You now know how to create a user submitted events calendar in WordPress using WPForms.
FAQ on User Submitted Events Calendar
Got more questions on user submitted events? Let’s look at more ways you can use this WPForms Events Calendar integration.
Can I Add Events to WordPress Without Approval?
Yes! If you want, you can publish submitted events as soon as someone submits your calendar form. That way, you don’t need to approve them manually, and they’ll show up on your WordPress events calendar instantly.
The WordPress events calendar plugin we’re using supports this.
To make it work, there are 2 things you’ll need to tweak in the steps above.
In the Post Submissions settings for your calendar form, set the Post Status to Published instead of Pending Review.
Then below that in the Custom Post Meta section, add 2 more meta keys:
- _EventStartDateUTC mapped to Start Time
- _EventEndDateUTC mapped to End Time
And that’s it! You’ve synced up your event registration form with The Events Calendar. Now your events will go live as soon as the calendar form is submitted.
If you have any issues with this, it’s usually because of a timezone mismatch. To fix it, go to the General Settings in the Events Calendar and click Update Time Zone Data.
Can I Charge For Listing Events in WordPress?
Yes, WPForms makes this easy too!
You can add a payment field to your events listing form and connect your payment gateway to WPForms. You can integrate WPForms with several major payment gateways like Stripe, Square, Authorize.net, and PayPal.
Here are a few helpful guides that explain how to collect payments through WPForms in detail:
- How to accept payments with Stripe in WPForms
- How to add Square payments to WordPress
- How to use the PayPal Standard addon with WPForms
- How to use the PayPal Commerce addon with WPForms
- How to use Authorize.Net with WPForms
- How to allow users to choose a payment method on your form
Keep in mind that you’ll want to manually check that the payment was successful before manually approving the event.
Can I Send Email Notifications for Event Submissions?
Yes, you can! By default, WPForms will email the admin email address in WordPress when you receive a new event listing. If you’d like to customize the email notification, or add more notifications, check out this guide to sending form notification emails.
If you want, you can turn WPForms notifications off and let The Events Calendar send an email notification for each event. If you’re not getting those alerts from The Events Calendar, check out how to fix The Events Calendar not sending email.
The guide will also show you how to log emails sent from The Events Calendar.
Can I Notify My Visitors When I Publish an Event?
Sure! Did you know that you can send browser push notifications from WordPress with a free plugin? Check out this article on how to send push notifications from WordPress.
Can I Send New Events to Google Calendar?
Yes! WPForms lets you easily send WordPress form entries to Google Calendar as well.
How Do I Export Events to CSV?
With WPForms, you can export any form entries to CSV or XLSX. Please check out this guide on how to export form entries in WordPress.
Can I Use More Custom Post Meta Fields?
Yes, you can use fields like:
- _EventAllDay – map to a checkbox field with the value
YESif checked, and blank if unchecked
- _EventCost – map to a number field on your form to display a price, or use a hidden field with the value
0(zero) if all your events are free
- _EventShowMap – map to a checkbox with
FALSEvalues, or a hidden field with the value
TRUEif you always want to show the map
- _EventURL – map to a URL field on your form.
Before adding more fields, please know that:
- Fields beginning with _Venue or _Organizer won’t work with the event post type
- Serialized arrays can’t be mapped to a form
- Fields that pull data from other posts, like _EventVenueID, likely won’t work.
Mapping additional fields is an advanced technique. Please check out The Events Calendar post meta documentation for more help.
Next, Accept User Submitted Blog Posts
Now that users can submit a WordPress event to your site, wouldn’t it be neat if they could also blog about it? If you accept user submitted posts, your visitors could share press releases and other event information to drive traffic to the calendar.
To set this up, check out the easy way to accept user submitted posts in WordPress.
And if you plan to take pictures at your event, don’t forget to make an online model release form.
Ready to build your form? Get started today with the easiest WordPress form builder plugin. WPForms Pro includes an event form template and offers a 14-day money-back guarantee.