=== One Quick Post === Contributors: G.Breant Donate link: http://dev.pellicule.org/?page_id=19 Tags: BuddyPress,quickpress,post,quick post,frontend,guest Requires at least: 3.1 Tested up to: 3.2.1 Stable tag: 0.6-alpha One Quick Post is a WordPress/BuddyPress plugin that allows you to enable frontend posting on your blog, even for guests. == Description == One Quick Post is a WordPress/BuddyPress plugin that allows you to enable frontend posting on your blog, even for guests. THIS IS AN ALPHA RELEASE. I spent a lot of time working on it. It's not perfect yet, but I hope to have some time soon to finish the debugging. Meanwhile, you can post my forum to send bugs, or donations... It will help improving the plugin. * build your custom forms. You can split a form into several steps. You can use custom post types, custom taxomies, custom fields (meta keys)... * Uses shortcodes to add the form into a page or post. * Used as core plugin of "Your Classified Ads" plugin. * BuddyPress compatible. BuddyPress specific features are under developpement. * You can enable guest posting. They'll just have to give their name and email. * Ability to use captchas using the "SI CAPTCHA Anti-Spam" plugin. * Works with the WordPress roles & capabilities system : if a user send a post; will it pend or will it published ? Is the user allowed to edit a published post ? * Notifications: you can enable the notifications; that will email the user when his post is pending, has been published or has been deleted. As admin; you can write the reason of the deletion of a post in an optional box. This would be included in the notification sent to the user. * ability to upload files * ability to geo-locate post. == Installation == 1. Check you have the least required WordPress version 2. Download the plugin 3. Unzip and upload to plugins folder 4. Activate the plugin == Frequently Asked Questions == = Notifications : When I delete a post from a user, how can I add the reason to the notification ? = Add a custom field 'oqp_mod_message' to this post. The value will be the reason why you did moderate this post. Save it, then only delete the post. The reason will be included in the notification. If you need advanced theming, have a look at the function "oqp_load_custom_template" where you will be able to see which files & hooks are used to display the posts. = How can I change how a field is displayed or saved? = You can use filters to act on how a field is displayed or saved, with those following hooks : add_filter('oqp_get_field_data',MYCUSTOM_DISPLAY_FIELD_FN,10,2); add_filter('oqp_get_editfield_data',MYCUSTOM_DISPLAY_EDITFIELD_FN,10,2); Example : here's an example code for a field 'biography'. In our form, this is a custom field with the name 'biography'. 1) When editing the field, we want it to be a textarea; and the content of the field should be the current user's description. 2) When displaying the field, display the current user's description. 3) When saving the field, update the current user's description. class Oqp_MyCV_Biography_Field{ function oqp_mycv_biography_field(){ add_filter('oqp_get_editfield_data',array(&$this,'edit'),10,2); add_filter('oqp_get_field_data',array(&$this,'display'),10,2); add_filter('oqp_saved_field_data',array(&$this,'save'),10,3); } function check_field($field){ //CHECK THIS IS THE RIGHT FIELD if ($field->slug!='custom') return false; if ($field->value!='biography') return false; return true; } function edit($html,$field){ //CHECK FIELD if (!$this->check_field($field)) return $html; //GET THE CURRENT USER DESCRIPTION $bio_data=get_the_author_meta('description'); //REPLACE THE FIELD HTML $html=''; return $html; } function display($html,$field){ //CHECK FIELD if (!$this->check_field($field)) return $html; //RETURN CURRENT USER DESCRIPTION return get_the_author_meta('description'); } function save($data,$field,$post_id) { //CHECK FIELD if (!$this->check_field($field)) return $data; //REMOVE CUSTOM META SAVED //we don't need to keep the post meta saved by OQP for this field, remove it delete_post_meta($post_id,$field->value); //UPDATE USER META $user_id=get_current_user_id(); $success = update_usermeta($user_id,'description',$data); //RETURN SUCCESS OR NOT return $success; } } == Screenshots == 1. Frontend posting 2. Single post display 3. Plugin options 4. Form options == Changelog == = 0.6 = * Major release = 0.5.7 = * Some bugs fixed = 0.5.6 = * Improved Geo = 0.5.5 = * Improved geolocation * Improved notices class * Improved theming * Various fixes * Code cleaning = 0.5.4 = * Improved theming = 0.5.3 = * Started BuddyPress integration = 0.5.2 = * Fixed some bugs + code cleaning = 0.5.1 = * Improved file upload * Fixed custom field bug * Changed some admin settings. Please check your form is still OK ! = 0.5.0 = * Improved geolocation = 0.4.9 = * Comments are back when displaying a single entry (last comment still do not appear?) = 0.4.8 = * Changed the way posts are saved. If it was a new post; OQP was unable to save some stuff (taxonomies,...) since the post ID wasn't known when updating that stuff. = 0.4.7 = * Changed the way redirection is handled after post has been saved (function save_post() and function oqp_save_form_data() * Fixed bug when first step is not loaded when creating a new post = 0.4.6 = * "Header already sent" bug fixed * Date bug fixed = 0.4.5-alpha = * Big update :) = 0.4.4 = * Fixed bug when the logged user has not suffiscient role to post. = 0.4.3 = * oqp_block() renamed to oqp_get_block * fixed the way the shortcode is run (was generating before the post content; no matter where its position inside the post) * Localization cleanup = 0.4.2 = * Fixed shortcode problem * Fixed post admin from frontend = 0.4.1 = * Now retrieves guest avatar from custom meta key email (filter get_the_author_user_email) * Added notifications for BuddyPress = 0.3.9 = * Various fixes * BP version currently disabled because being rewritten = 0.3.8 = * Language localization * Priority hooks corrections * Buddypress compatibility still is buggy = 0.3.7 = * Better CSS * Now handles custom fields ! * Added a form option for Terms & Conditions before posting * Added filters to add descriptions to the form fields. See FAQ. = 0.3.6 = * BuddyPress fixes about how oqp_bp_init & oqp_init are hooked = 0.3.5 = * Various fixes and improved the admin = 0.3.4 = * Bugfix (yclads_maps_is_setup) = 0.3.3 = * Lots of changes ! = 0.2.7 = * Bug fixes = 0.2.6-alpha = * Bug fixes about guest posting = 0.2.5-alpha = * Implemented simple image uploader. Will be improved. = 0.2.4-alpha = * Bug fix 'cannot add header information' = 0.2.3-alpha = * Taxonomies bug fix * Capabilities bug fix = 0.2.2-alpha = * Bugs fixes = 0.2.1-alpha = * Changed the way taxonomies can get arguments (filtering, ...) = 0.2.0-alpha = * Lots of bug fixes * Added Captcha function * Better notifications * Better theming support = 0.1.9-alpha = * Guest posts query / url are now checking for the posts with a same guest email * Bug fixes = 0.1.7-alpha = * Bug fix in the shortcode = 0.1.6-alpha = * Added expandable categories * Changed the way the shortcode (& taxonomies) are handled (more flexible) = 0.1.5-alpha = * Tiny MCE (Wysiwyg Editor) * New file structure = 0.1.4-alpha = * New file structure * Redirection bug fixed = 0.1.3-alpha = * Capability bug fixed = 0.1.2-alpha = * BuddyPress bug fixed (http://dev.pellicule.org/bbpress/topic/one-quick-post-for-buddypress-issue) * Mails improved = 0.1.1-alpha = * New admin option to send the user a mail when a post status changes from pending to publish = 0.1-alpha = * First release == Support == [Support forums](http://dev.pellicule.org/bbpress/forum/one-click-post) == Roadmap == * Better BuddyPress integration * Better mailing system * Delete pictures * Change featured thumbnail == Bugs == * If the poster has not at least the contributor status; he is no more credited as author when the post is updated.