Plugin Directory

Frontend Uploader

This plugin allows your visitors to upload User Generated Content (media and posts/custom-post-types with media).

What is Frontend Uploader?

This plugin is a simple way for users to submit content to your site. The plugin uses a set of shortcodes to let you create highly customizable submission forms to your posts and pages. Once the content is submitted, it is held for moderation until you approve it. It’s that easy!

Exploring Customizations

  • You can modify the submission form as needed, and have users submit posts. Please visit the FAQ page for more information.
  • This plugin can be applied to Posts, Pages, and Custom Post Types. You can enable this via Settings > Frontend Uploader Settings.
  • In addition to the WordPress whitelisted file types, this also supports uploading of Microsoft Office and Adobe files, as well as various video and audio files. You can enable these file types via Settings > Frontend Uploader Settings.
  • The plugin allows you to upload all filetypes that are whitelisted in WordPress. If you’d like to add more file types and are comfortable with theme development, there's a filter that'll allow you to add some exotic MIME-type.

You can also manage UGC for selected custom post types (Please refer to the plugin's settings page). By default, UGC is enabled for posts and attachments. If you want to be able to get any other post types UGC submissions just select desired post types at the plugin's settings page, and pass post_type='my_post_type' to the [fu-upload-form] shortcode.

Customizing Your Form with Shortcode Parameters

Frontend Uploader uses shortcodes to insert a form into a page or post. The default form shortcode is [fu-upload-form] but you can modify the plugin's behavior with additional parameters.

If you would like to build a custom form, it must begin with [fu-upload-form] and end with [/fu-upload-form].

The [fu-upload-form] shortcode has several parameters important parameters:

form_layout This determines whether the form is saved as a post/custom post type (‘post’), as a media file (media), or as a post with images (post_media). Default value is media. Example: [fu-upload-form class="your-class" title="Upload your media" form_layout=”post”]

title Add this [fu-upload-form] shortcode, and this will be the Headline that will be displayed before the form. Example: [fu-upload-form class="your-class" title="Upload your media"]

class HTML class of the form, defaults to 'validate'. If you want your form being validated - do not remove validate class. If you would like to item to be required before a user can submit, you can set it to ‘required.’ Example: [input type="text" name="post_title" id="title" class="required"]

post_type Any post whitelisted in settings post type. Defaults to 'post'. Example: [fu-upload-form post_type="my-custom-post-type-slug"]

append_to_post Automatically insert images into uploaded post (true or false)

success_page URL to redirect on successful submission, defaults to the URL where the form is being displayed. For security reasons this should be an URL on your site (no external links). You can use [fu-upload-response] shortcode to display success/error messages on the redirect page.

category ID of category the post should be attached (only in post or post+media mode).

post_id ID of the post the image should be attached to. Defaults to the post ID of the post the shortcode is on.

suppress_default_fields In it's basic form shortcode adds some default fields for you - Title, Description, and file upload. However, you can create a customized shortcode. Override global setting for supressing default form fields (true or false). Example: [fu-upload-form suppress_default_fields="true"] ... inner shortcodes omitted... [/fu-upload-form]

Within [fu-upload-form], you can add form fields.

  • [input type="text" ] A text box for one line of text
  • [textarea] => A text box for multiple lines of text
  • [input type="file"] => A file uploader
  • [checkboxes values="value:Description,124:Banana,cherry:Cherry"] => A set of checkboxes
  • [radio name="foo" class="checkboxes" description="Pick a fruit" values="value:Description,124:Banana,cherry:Cherry"] => A set of radio buttons
  • [select name="foo" class="select" description="Pick a fruit" values="apple:Apple,banana:Banana,cherry:Cherry"] => A select
  • [input type="submit" class="btn" value="Submit"] => A submit button

** Each field has a set of attributes **

  • id of element
  • name of element1
  • extra classes you want to add
  • text or file or submit
  • whether the field is required
  • minimum amount of characters for field value
  • maximum amount of characters for field value
  • allow multiple file uploads (only for file inputs)
  • input label
  • input help text displayed underneath
  • input value
  • multiple option inputs (checkboxes,select,radio) values in format value:description, another_value:anotherdescription
  • enable TinyMCE for textareas

** Support **

Please make sure to read this readme including FAQ section before posting in support forum.

** Development **

Fork the plugin or report an issue on Github

Requires: 4.1 or higher
Compatible up to: 4.6.1
Last Updated: 3 months ago
Active Installs: 8,000+


4.3 out of 5 stars


2 of 16 support threads in the last two months have been marked resolved.

Got something to say? Need help?


Not enough data

0 people say it works.
1 person says it's broken.

100,2,2 100,1,1
100,2,2 100,1,1
100,2,2 67,3,2 100,2,2 67,3,2 100,1,1 100,2,2
100,1,1 50,2,1 50,2,1
100,1,1 100,1,1
100,1,1 100,3,3 100,1,1
100,1,1 0,1,0 0,1,0