There are a lot of different use cases where WordPress front-end post submission can come in handy.
By “submit WordPress posts from the front-end”, I mean some type of front-end editor or form where users can fill in the details and hit submit. Then, that information shows up in WordPress as either a blog post or some other custom post type.
In this post, I’ll show you exactly how to set up front-end post submission on WordPress without writing a single line of code. Yup – you can do this exclusively with a user-friendly plugin.
Why Let People Submit Posts from the Front-End in WordPress?
As I mentioned, there are a ton of different ways in which this functionality comes in handy.
If you’re working with regular WordPress posts (AKA blog posts), you could:
- Let people submit guest posts from the front-end and then save them as a draft for review.
- Create a more beginner-friendly way for registered authors at your site to create blog posts.
- Let registered members create blog posts to create a sort of community blog.
But I think where this functionality starts really getting flexible is when you combine it with WordPress custom post types. Some examples of what you can do here:
- A job listing site where companies can submit their open jobs through a form and then those jobs automatically display on the front-end.
- An event listing site where people can submit events from the front-end.
- A classifieds site where people can submit items they want to sell.
You get the idea – it’s super flexible and lets you create some really dynamic WordPress sites.
What You Need to Allow Front-end Post Submission
While it’s possible to create your own front-end posting solution with code, a more user-friendly option here is to use a plugin.
While there are a few different options for this (including some WordPress form plugins), we like Toolset because it can not only handle front-end forms, but it can also help with lots of other stuff like:
- Custom post types
- Custom fields
- Displaying information from custom post types and custom fields
- Restricting access to front-end post submission forms
Basically, it’s like an all-in-one toolkit for building custom WordPress sites. But at the same time, it’s also modular, so you can pick and choose exactly which features you want to use (like just using the forms module).
If you want to learn more, check out our full Toolset review.
How to Set Up WordPress Front-End Post Submission
For this tutorial, I’m going to use the example of creating a front-end post submission form for guest blog posts.
But again, the plugin that you’ll use in this tutorial – Toolset – can very easily work with custom post types as well. And, it can also help you create those custom post types in the first place.
To get started, make sure to install and activate at least the Toolset Forms plugin/module. You can install other modules as well, but Toolset Forms is all you need for this tutorial.
1. Create a New Post Form and Give it a Title
Once you’ve installed and activated the Toolset Forms plugin, go to Toolset → Post Forms → Add New to create your front-end post submission form:
This will open a wizard that guides you through creating your form:
On the first step, enter a title:
2. Configure Form Settings
On the next screen, you’ll need to make some bigger choices.
- Form type – if you want people to submit new posts, leave it as Add new content.
- Post type to create – if you want people to submit blog posts, select Posts. If you want to connect your form to a custom post type, this is also where you’d make that choice.
- Set this post status – this is the initial status after someone submits a post. If you want to manually review posts before they go live, select Draft or Pending Review, if you’re ok with automatically publishing them right away, you can also select Published.
Beyond that, you can also choose what happens after someone submits a form, as well as whether or not they can upload or insert media with the Add Media button:
3. Design Your Form
On the next page, you’ll get a drag-and-drop builder where you can design the layout of your form and choose which fields are available.
The nice thing about Toolset Forms is that it will automatically populate the form with all the basic fields:
You can use drag-and-drop to rearrange the fields (including changing the column layout). You can also add extra fields if you want, like letting people choose taxonomies and tags.
You can see that I’ve simplified the form and added a two-column layout for categories and tags:
4. Configure Email Notifications
On the next screen, you can configure email notifications that are sent after this form is submitted.
You don’t need to use these – but they give you the option of sending a confirmation email to form submitters letting them know you received their post. Or, you could also send alert notifications to you or your admins:
Once you’ve made your choices, click the Finish button to finalize your form.
5. Embed Form
To finish things out, you’ll need to actually embed your form on the front-end of your site.
If you’re using the new block editor (AKA Gutenberg), you can use Toolset Forms’ dedicated Toolset Form block:
Otherwise, you can embed it via shortcode.
Once you publish the page with your form, people can start submitting content from the front-end:
It will appear with the post status you chose in the plugin’s settings – e.g. draft, pending review, etc.
Where to Go from Here?
With Toolset, you have a lot of options for getting more creative with your front-end post submission forms.
First off, you can use the Toolset Access module to restrict which users can use your front-end post submission form. For example, you could only let registered authors use the form.
With Toolset Types, you could create custom post types to house your front-end post submissions. You could also create custom fields and let people submit content into those custom fields as well.
With Toolset Forms Commerce, you could charge people for the privilege of submitting a post. For example, you could make people pay $15 to submit a new job listing to a jobs custom post type.
Basically, Toolset gives you a lot of options for enhancing your front-end post submit form…if you want them.
Front-end post submission forms are a great way to create more dynamic WordPress sites that are able to accept user input.
Whether you want to create a front-end submit post form for blog posts or other custom post types, Toolset makes a great option and offers a lot of other ways for enhancing your forms.
Do you have any questions about how to create front-end post submission forms on WordPress? Ask away in the comments!