Do you want users to submit events to a calendar on your website? Letting users submit their own events is a huge timesaver and can be super helpful for community websites.
In this article, we’ll show you how to create a user submitted events calendar in WordPress. We’ll show you how to accept event listings from your users and show them on a calendar page.
What Is a WordPress User Submitted Events Plugin?
A WordPress event calendar plugin lets you accept event listings on the frontend of your site. That makes it super easy for people to contribute events to a calendar, with or without a user account.
A user submitted events plugin makes it easy to advertise:
- Community events
- Business conferences
- Concerts and festivals
- Sports matches
You could make money online by charging for event listings posted to your website’s calendar. And you could add payment buttons to your event listings if you want to sell tickets.
We’re going to show you how to make a calendar form for your site. When someone submits the form, it’ll be added to your WordPress event calendar.
How to Create a User Submitted Events Calendar Form in WordPress
We’re going to use WPForms as our user submitted events plugin.
On the backend, we’re going to integrate it with a WordPress events plugin called The Events Calendar. That will take care of displaying the events on our site.
Here are the steps we’re going to work through.
- Install the WPForms Plugin
- Create a Form for User Submitted Events
- Install the Events Calendar Plugin
- Connect Your Form to Your Calendar
- Customize the Thank You Message
- Publish Your User Submitted Events Form
- Review and Publish Event Submissions
OK, first up, let’s install the WPForms plugin.
Step 1: Install the WPForms Plugin
Next, you’ll need to install and activate the Post Submissions addon for WPForms.
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. The Pro version comes with a Form Templates Pack addon with tons of useful templates.
For now, we’re going to start with a simple contact form and add fields for the WordPress event calendar.
You can add additional fields by dragging them from the left hand panel to the right hand panel.
Then, click on the field to make any changes.
In our form, we added these fields to our event registration form:
- Event Title is a Single Line Text field.
- Start & End Time are two Date/Time fields. Using these fields, visitors can add either single day or multi-day events.
- Promotional Image is a field visitors can use to upload images to WordPress
- Description lets visitors specify the event location and other details.
If you decide you want to monetize your website and charge users to submit their event on your calendar, read this documentation on how to allow users to choose a payment method on your WordPress forms. This is a handy way to take payment without WooCommerce, and you can easily use PayPal or Stripe.
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.
Note: You can create recurring events with the Pro version of The Events Calendar.
Go to Plugins » Add New in your WordPress dashboard and search for “The Events Calendar” plugin.
Click Install Now and then Activate.
The Events Calendar is now ready for you to use on your site.
How WPForms Works With The Events Calendar
The Events Calendar plugin will create a custom post type called Events that will appear in your WordPress dashboard.
Custom post types work the same way that posts and pages work. You can send data from forms directly to events posts with WPForms, and those posts will remain separate from your site’s regular posts and pages.
You can preview the calendar that is created after installing and activating the plugin at
http://yoursite.com/events. This will show you all of the upcoming events that have been approved.
For now, it won’t show much information since you don’t have any events submitted yet.
The new calendar form we made will submit a new event when your visitor fills it out. We’re going to use some metadata on the form that will tell The Events Calendar how to list it.
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 in the WordPress backend.
Open up the event submission form you created earlier. Then go to Settings » Post Submissions in the form editor and turn post submissions On.
Next, you’ll want to match each field to the relevant part of the event custom post type.
In our example we chose:
- Event Title for the Post Title dropdown
- Description for the Post Content dropdown
- Promotional Image for the Post Featured Image dropdown
We also set Post Type to Events. Remember: that’s the custom post type created by enabling The Events Calendar plugin.
We’re also going to set Post Status to Pending Review so that you can approve each submission and event description before it goes live on your site.
Now you can scroll down to the Custom Post Meta section.
The last part of connecting calendar form is to add just a bit of code here. This will connect the start and end times in your form to the start and end times in the calendar.
We’ve shown you the code you need to include in the image below, but you can look up any other custom meta code that The Events Calendar offers if you want to add more functionality.
The Custom Post Meta section is handy for all kinds of custom fields. If you’d like to learn more about using it, click to read our guide to using custom fields on user submitted posts.
We’re done now, so let’s click Save.
How to Add Events to WordPress Without Approval
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
- In the Custom Post Meta section, add 2 more custom fields for _EventStartDateUTC and _EventEndDateUTC. Then map those 2 fields to the Start Time and 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.
Step 5: Customize the Thank You Message
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 » Confirmation. 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:
- Send users different message depending on the event type
- Forward them 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.
Sending Email Notifications for Event Submissions
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.
Step 6: Publish Your User Submitted Events Form
OK, we’re ready to publish the event on your WordPress site.
WPForms allows you to add your forms in many locations on the frontend, including your blog posts, pages, and even sidebar widgets.
You can use a shortcode or embed the form with the wizard. Let’s add your event registration form with a 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 button here.
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 Submissions
After your form is live on your site, you just need to approve each event submission. To do this, 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, taking special note of the Time & Date near the bottom of your screen. This will be the time listed on your calendar.
When you’re finished reviewing all the event details, click Publish. Then you see the events calendar view at
When the user hovers their mouse over the calendar event, they’ll see a preview popup. By clicking on it, they’ll open up the full event page with a complete listing.
And there you have it! You now know how to create a user submitted events calendar in WordPress using WPForms.
Did you know that you can also send browser push notifications from WordPress? You can easily use PushEngage to notify subscribers each time you publish a new event.
Next Step: 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.