=== Frontend Uploader === Contributors: rinatkhaziev, rfzappala, danielbachhuber Tags: frontend, image, images, media, uploader, upload, video, audio, photo, photos, picture, pictures, file Requires at least: 3.3 Tested up to: 3.6-beta3 Stable tag: 0.5.4 This plugin allows your visitors to upload User Generated Content (media and posts/custom-post-types with media). == Description == This plugin gives you an ability to easily accept, moderate and publish user generated content (currently, there are 3 modes: media, post, post + media). The plugin allows you to create a front end form with multiple fields (easily customizable with shortcodes). You can limit which MIME-types are supported for each field. All of the submissions are safely held for moderation in Media/Post/Custom Post Types menu under a special tab "Manage UGC". Review, moderate and publish. It's that easy! This plugin supports multiple uploads for modern browsers. Multiple file uploads are enabled for default form. To use it in your custom shortcode add multiple="" attribute to file shortcode. Here's example of default form (you don't need to enter all that if you want to use default form, just use [fu-upload-form]): `[fu-upload-form class="your-class" title="Upload your media"] [textarea name="caption" class="textarea" id="ug_caption" description="Description (optional)"] [input type="file" name="photo" id="ug_photo" class="required" description="Your Photo" multiple=""] [input type="submit" class="btn" value="Submit"] [/fu-upload-form]` If you want to customize your form, please refer to Form Customization section. You can also add select elements to your form like so: [select name="foo" class="select" id="ug_select" description="Pick a fruit" values="Apple,Banana,Cherry"] By default plugin allows all MIME-types that are whitelisted in WordPress. However, there's a filter if you need to add some exotic MIME-type. Refer to Other notes -> Configuration filters. Be sure to check out Other notes -> Form Customization to get a grasp on how to customize the upload form. = New in v0.5 = You can choose what type of files you allow your visitors to upload from Frontend Uploader Settings = New in v0.4 = Now your visitors are able to upload not only media, but guest posts as well! Use [fu-upload-form form_layout="post_image"] to get default form to upload post content and images Use [fu-upload-form form_layout="post"] to get default form to upload post content 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 = Translations: = * Se habla español (Spanish) (props gastonbesada) * Мы говорим по-русски (Russian) * Nous parlons français (French) (props dapickboy) * Nous parlons français (Canadian French) (props rfzappala) [Fork the plugin on Github](https://github.com/rinatkhaziev/wp-frontend-uploader/) == Installation == 1. Upload `frontend-uploader` to the `/wp-content/plugins/` directory 1. Activate the plugin through the 'Plugins' menu in WordPress 1. Tweak the plugin's settings in: Settings -> Frontend Uploader Settings 1. Use the following shortcode in post or page: [fu-upload-form] 1. Moderate uploaded files in Media -> Manage UGC menu 1. Moderate user posts in Posts -> Manage UGC == Screenshots == 1. Screenshot of plugin's UI (It's looks like standard media list table, with slightly better Parent column and additional row action: "Approve") == Form Customization == = [fu-upload-form] parameters = The form has several parameters that can modify its behavior: 1. 'title' => Headline that will be displayed before the form 1. 'class' => HTML class of the form, defaults to 'validate'. If you want your form being validated - do not remove validate class 1. 'category' => ID of category the post should be attached (only in post or post+image mode). The category should be whitelisted in the settings 1. 'success_page' => URL to redirect on successful submission, defaults to the URL where the form is being displayed 1. 'form_layout' => There are three different modes: post, post_image, image. Default is image 1. 'post_id' => ID of the post the image should be attached to. Defaults to current post id 1. 'post_type' => Any registered whitelisted post type. Defaults to 'post'. Works only in post and post+image modes. == Configuration Filters == = fu_allowed_mime_types = Allows you to add your custom MIME-types. Please note that there might be multiple MIME types per file extension. `add_filter( 'fu_allowed_mime_types', 'my_fu_allowed_mime_types' ); function my_fu_allowed_mime_types( $mime_types ) { $mp3_mimes = array( 'audio/mpeg', 'audio/x-mpeg', 'audio/mp3', 'audio/x-mp3', 'audio/mpeg3', 'audio/x-mpeg3', 'audio/mpg', 'audio/x-mpg', 'audio/x-mpegaudio' ); foreach( $mp3_mimes as $mp3_mime ) { $mime = $mp3_mime; preg_replace("/[^0-9a-zA-Z ]/", "", $mp3_mime ); $mime_types['mp3|mp3_' . $mp3_mime ] = $mime; } return $mime_types; }` = fu_after_upload = `add_action( 'fu_after_upload', 'my_fu_after_upload' ); function my_fu_after_upload( $attachment_ids ) { // do something with freshly uploaded files // This happens on POST request, so $_POST will also be available for you }` = fu_additional_html = Allows you to add additional HTML to form `add_action('fu_additional_html', 'my_fu_additional_html' ); function my_fu_additional_html() { ?>