User Submitted Posts – Enable Users to Submit Posts from the Front End
Enable visitors to submit posts and images from the front-end of your site. Many features including anti-spam security, content restriction, and more.
Next Milestone 20K
Unlock Exact Install Count
See the precise estimated active installs for this plugin, calculated from real-time ranking data.
- Exact install estimates within tiers
- Track install growth over time
- Milestone progress predictions
Rank Changes
Downloads Growth
Upgrade to Pro
Unlock 30-day, 90-day, and yearly download history charts with a Pro subscription.
Upgrade NowReviews & Ratings
Tracked Keywords
Showing 0 of 0| Keyword | Position | Change | Type | Updated |
|---|---|---|---|---|
| No keyword data available yet. | ||||
Unlock Keyword Analytics
Track keyword rankings, search positions, and discover new ranking opportunities with a Pro subscription.
- Full keyword position tracking
- Historical ranking data
- Competitor keyword analysis
Support Threads Overview
Track This Plugin
Get detailed analytics, keyword tracking, and position alerts delivered to your inbox.
Start Tracking FreePlugin Details
- Version
- 20260217
- Last Updated
- Mar 27, 2026
- Requires WP
- 4.7+
- Tested Up To
- 7
- PHP Version
- 5.6.20 or higher
- Author
- Jeff Starr
Support & Rating
- Rating
- ★ ★ ★ ★ ★ 4.8
- Reviews
- 909
- Support Threads
- 1
- Resolved
- 100%
Keywords
Upgrade to Pro
Unlock keyword rankings, search positions, and detailed analytics with a Pro subscription.
Upgrade NowSimilar Plugins
Frequently Asked Questions
Common questions about User Submitted Posts – Enable Users to Submit Posts from the Front End
Check the box and click "Save Settings" to save your changes
Note that this setting merely assigns the submitted image as the Featured Image; it's up to your theme's single.php file to include the_post_thumbnail() to display the Featured Images. If your theme is not so equipped, check out this tutorial at WP-Mix.
How to require login?
To require login to use the form, visit the plugin settings and enable the option to "Require User Login". That will display the submission form only to logged-in users.
For more fine-grained control, head on over to the Installation tab and scroll down to the section on "Content Restriction".
How do I change the appearance of the submission form?
The easiest way to customize the form is via the plugin settings. There you can do things like show/hide specific fields, control the number and size of submitted images, customize the Challenge Question, and so forth.
Also in the plugin settings, you can choose one of the following form configurations:
HTML5 Form + Default CSS (Recommended)
HTML5 Form + Disable CSS (Provide your own styles)
Custom Form + Custom CSS (Provide your own form template & styles)
To learn how to set up the Custom Form + Custom CSS, visit "Custom Submission Form" under the Installation tab.
For advanced customization, developers can use USP action and filter hooks.
To go further with unlimited custom forms, check out USP Pro. USP Pro provides a form builder within the WP Admin Area, where you can add any fields, labels, text, and so forth.
Can I include video?
The free version of USP supports uploads of images only, but some hosted videos may be included in the submitted content by simply including the video URL on its own line. Check out the Embeds documentation for more info. Note that USP Pro enables users to upload video and other file types supported by WordPress.
How do I reset the plugin settings?
To reset plugin settings to factory defaults:
Visit "Restore Default Options" in the plugin settings
Check the box and save your changes
Deactivate the plugin and then reactivate it
Plugin settings now are restored to defaults
Restoring default settings does not delete any submitted posts. Even if you completely remove the plugin, the submitted posts will not be deleted. You have to remove them manually, if desired.
Can you explain the setting "Registered Username"?
When "Registered Username" is enabled:
If the user is logged in, their registered username is used as the Post Author
If the user is logged out, the setting "Assigned Author" is used as the Post Author
How can I translate this plugin?
Currently the easiest and most flexible method is to use GlotPress to translate USP. That is the recommended translation route going forward, but for the time being you may also translate using a plugin such as Loco Translate. FYI, USP's translation files are located in the /languages/ directory.
Why am I not receiving the Email Alerts?
Normally the plugin sends an Email Alert each time a post is submitted. If that is not happening in your case, you will need to troubleshoot your setup. Here is a guide on Troubleshooting Email that should help.
How to disable fancy category/tag select script?
USP uses the Chosen.js library to enhance the behavior and appearance of the Category and Tag fields. The enhanced fields will be displayed when either/both of the following are true:
The option "Multiple Categories" is enabled (for Category field)
The option "Use Existing Tags" is enabled (for Tag field)
If you want to disable the fancy Chosen script for these fields, you can do so by adding the following code snippet to your WordPress site:
<script>var usp_disable_chosen = true;</script>
Save changes and done. Also just FYI, here is a guide that explains how to add custom code to WordPress.
How to change the language for Google reCaptcha?
By default, the Google reCaptcha field is displayed in English. To change that to some other language, first locate the two-digit abbreviation for your language here. Then add the following code to your theme (or child theme) functions.php, or add via custom plugin:
function usp_recaptcha_querystring($query) { return 'en'; }
add_filter('usp_recaptcha_querystring', 'usp_recaptcha_querystring');
Notice where it says en, that is the two-character language code you want to replace with your own. Then save changes and done.
Where can I check out a demo of the USP form?
There is a simplified USP Demo at Perishable Press. Note the demo form is non-functional, just there to give you a general idea. The actual form provided by the plugin has more features, functionality, etc.
How to allow blank targets in post content?
By default, USP removes any target="_blank" attributes in submitted post content. This is a recommended security feature. It is possible however to allow blank targets:
function usp_content_patterns($array) { return array(); }
add_filter('usp_content_patterns', 'usp_content_patterns');
That code can be added via theme (or child theme) functions.php, or add via custom plugin.
How to disable all HTML tags in submitted posts?
Add the code snippet provided here.
mod_security is preventing saving changes?
If mod_security is installed on your server, it may prevent saving changes in the plugin settings. For a further explanation and quick copy/paste code solution, check out this forum post. Thanks to tomlandon for sharing the code solution.
How do the edit-post and delete-post links work?
When %%edit_link%% is included in the Email Alert settings, a link will be included in the email alert that takes capable users to the Edit Post screen for the submitted post. Likewise when %%delete_link%% is included in the Email Alert settings, a link will be included that enables capable users to delete the submitted post. Note that these links work only for users who have sufficient capabilities (e.g., Editor, Admin) AND are logged into WordPress when the link is clicked. For more details and tips, check out the USP FAQs at Perishable Press.
Action and filter hooks
Here are some of the most commonly used action and filter hooks provided by User Submitted Posts:
Filters:
usp_post_status
usp_post_author
usp_form_shortcode
usp_mail_subject
usp_mail_message
usp_new_post
usp_input_validate
usp_require_login
usp_default_title
Actions:
usp_submit_success
usp_submit_error
usp_insert_before
usp_insert_after
usp_files_before
usp_files_after
For more, check out the list of action hooks for User Submitted Posts. And of course, check the source code for even more. If you need a hook that is not available, let me know via the contact form below.
Custom Fields attached to submitted posts
Each submitted post attaches a variety of custom fields, including:
is_submission - indicates that the post is a user-submitted post
user_submit_image - the URL of the submitted image (one custom field per image)
user_submit_ip - the IP address of the submitted-post author
user_submit_name - the name of the submitted-post author
user_submit_url - the submitted URL
usp_custom_field - configurable Custom Field
For a more complete list, submit a test post and visit the "Edit Post" screen. There you can toggle open the "Custom Fields" meta panel and view all attached custom fields.
More FAQs
Want to read some more FAQs? Check out the USP FAQs at Perishable Press
Questions? Feedback?
Send any questions or feedback via my contact form. Thanks! :)