Press This empty title fix, props noel, see #11390, fixes #10715

git-svn-id: http://svn.automattic.com/wordpress/trunk@12371 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
azaozz 2009-12-11 00:14:18 +00:00
parent 929a2cd6cd
commit 9a24103c77
1 changed files with 15 additions and 14 deletions

View File

@ -43,37 +43,38 @@ function press_it() {
// define some basic variables // define some basic variables
$quick['post_status'] = 'draft'; // set as draft first $quick['post_status'] = 'draft'; // set as draft first
$quick['post_category'] = isset($_POST['post_category']) ? $_POST['post_category'] : null; $quick['post_category'] = isset($_POST['post_category']) ? $_POST['post_category'] : null;
$quick['tax_input'] = isset($_POST['tax_input']) ? $_POST['tax_input'] : ''; $quick['tax_input'] = isset($_POST['tax_input']) ? $_POST['tax_input'] : null;
$quick['post_title'] = isset($_POST['title']) ? $_POST['title'] : ''; $quick['post_title'] = ( trim($_POST['title']) != '' ) ? $_POST['title'] : ' ';
$quick['post_content'] = ''; $quick['post_content'] = isset($_POST['post_content']) ? $_POST['post_content'] : '';
// insert the post with nothing in it, to get an ID // insert the post with nothing in it, to get an ID
$post_ID = wp_insert_post($quick, true); $post_ID = wp_insert_post($quick, true);
if ( is_wp_error($post_ID) )
wp_die($post_ID);
$content = isset($_POST['content']) ? $_POST['content'] : ''; $content = isset($_POST['content']) ? $_POST['content'] : '';
$upload = false; $upload = false;
if( !empty($_POST['photo_src']) && current_user_can('upload_files') ) if( !empty($_POST['photo_src']) && current_user_can('upload_files') ) {
foreach( (array) $_POST['photo_src'] as $key => $image) foreach( (array) $_POST['photo_src'] as $key => $image) {
// see if files exist in content - we don't want to upload non-used selected files. // see if files exist in content - we don't want to upload non-used selected files.
if( strpos($_POST['content'], htmlspecialchars($image)) !== false ) { if ( strpos($_POST['content'], htmlspecialchars($image)) !== false ) {
$desc = isset($_POST['photo_description'][$key]) ? $_POST['photo_description'][$key] : ''; $desc = isset($_POST['photo_description'][$key]) ? $_POST['photo_description'][$key] : '';
$upload = media_sideload_image($image, $post_ID, $desc); $upload = media_sideload_image($image, $post_ID, $desc);
// Replace the POSTED content <img> with correct uploaded ones. Regex contains fix for Magic Quotes // Replace the POSTED content <img> with correct uploaded ones. Regex contains fix for Magic Quotes
if( !is_wp_error($upload) ) $content = preg_replace('/<img ([^>]*)src=\\\?(\"|\')'.preg_quote(htmlspecialchars($image), '/').'\\\?(\2)([^>\/]*)\/*>/is', $upload, $content); if( !is_wp_error($upload) )
$content = preg_replace('/<img ([^>]*)src=\\\?(\"|\')'.preg_quote(htmlspecialchars($image), '/').'\\\?(\2)([^>\/]*)\/*>/is', $upload, $content);
} }
}
}
// set the post_content and status // set the post_content and status
$quick['post_status'] = isset($_POST['publish']) ? 'publish' : 'draft'; $quick['post_status'] = isset($_POST['publish']) ? 'publish' : 'draft';
$quick['post_content'] = $content; $quick['post_content'] = $content;
// error handling for $post
if ( is_wp_error($post_ID)) {
wp_die($id);
wp_delete_post($post_ID);
// error handling for media_sideload // error handling for media_sideload
} elseif ( is_wp_error($upload)) { if ( is_wp_error($upload) ) {
wp_die($upload);
wp_delete_post($post_ID); wp_delete_post($post_ID);
wp_die($upload);
} else { } else {
$quick['ID'] = $post_ID; $quick['ID'] = $post_ID;
wp_update_post($quick); wp_update_post($quick);