Changeset 20384
- Timestamp:
- 04/06/2012 08:47:24 PM (13 years ago)
- Location:
- trunk/wp-admin
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-admin/custom-header.php
r20358 r20384 701 701 } 702 702 703 list($width, $height, $type, $attr) = getimagesize( $file ); 703 if ( file_exists( $file ) ) { 704 list( $width, $height, $type, $attr ) = getimagesize( $file ); 705 } else { 706 $data = wp_get_attachment_metadata( $id ); 707 $height = $data[ 'height' ]; 708 $width = $data[ 'width' ]; 709 unset( $data ); 710 } 704 711 705 712 $max_width = 0; … … 717 724 { 718 725 // Add the meta-data 719 wp_update_attachment_metadata( $id, wp_generate_attachment_metadata( $id, $file ) ); 726 if ( file_exists( $file ) ) 727 wp_update_attachment_metadata( $id, wp_generate_attachment_metadata( $id, $file ) ); 720 728 update_post_meta( $id, '_wp_attachment_is_custom_header', get_option('stylesheet' ) ); 721 729 … … 725 733 } elseif ( $width > $max_width ) { 726 734 $oitar = $width / $max_width; 727 $image = wp_crop_image($ file, 0, 0, $width, $height, $max_width, $height / $oitar, false, str_replace(basename($file), 'midsize-'.basename($file), $file));735 $image = wp_crop_image($id, 0, 0, $width, $height, $max_width, $height / $oitar, false, str_replace(basename($file), 'midsize-'.basename($file), $file)); 728 736 if ( is_wp_error( $image ) ) 729 737 wp_die( __( 'Image could not be processed. Please go back and try again.' ), __( 'Image Processing Error' ) ); -
trunk/wp-admin/includes/image-edit.php
r19871 r20384 196 196 </div> 197 197 <?php 198 }199 200 function load_image_to_edit($post_id, $mime_type, $size = 'full') {201 $filepath = get_attached_file($post_id);202 203 if ( $filepath && file_exists($filepath) ) {204 if ( 'full' != $size && ( $data = image_get_intermediate_size($post_id, $size) ) ) {205 $filepath = apply_filters('load_image_to_edit_filesystempath', path_join( dirname($filepath), $data['file'] ), $post_id, $size);206 }207 } elseif ( function_exists('fopen') && function_exists('ini_get') && true == ini_get('allow_url_fopen') ) {208 $filepath = apply_filters('load_image_to_edit_attachmenturl', wp_get_attachment_url($post_id) , $post_id, $size);209 }210 211 $filepath = apply_filters('load_image_to_edit_path', $filepath, $post_id, $size);212 if ( empty($filepath) )213 return false;214 215 switch ( $mime_type ) {216 case 'image/jpeg':217 $image = imagecreatefromjpeg($filepath);218 break;219 case 'image/png':220 $image = imagecreatefrompng($filepath);221 break;222 case 'image/gif':223 $image = imagecreatefromgif($filepath);224 break;225 default:226 $image = false;227 break;228 }229 if ( is_resource($image) ) {230 $image = apply_filters('load_image_to_edit', $image, $post_id, $size);231 if ( function_exists('imagealphablending') && function_exists('imagesavealpha') ) {232 imagealphablending($image, false);233 imagesavealpha($image, true);234 }235 }236 return $image;237 198 } 238 199 -
trunk/wp-admin/includes/image.php
r19687 r20384 44 44 * @return string|WP_Error|false New filepath on success, WP_Error or false on failure. 45 45 */ 46 function wp_crop_image( $src_file, $src_x, $src_y, $src_w, $src_h, $dst_w, $dst_h, $src_abs = false, $dst_file = false ) { 47 if ( is_numeric( $src_file ) ) // Handle int as attachment ID 48 $src_file = get_attached_file( $src_file ); 49 50 $src = wp_load_image( $src_file ); 51 52 if ( !is_resource( $src ) ) 46 function wp_crop_image( $src, $src_x, $src_y, $src_w, $src_h, $dst_w, $dst_h, $src_abs = false, $dst_file = false ) { 47 if ( is_numeric( $src ) ) { // Handle int as attachment ID 48 $src_file = get_attached_file( $src ); 49 if ( ! file_exists( $src_file ) ) { 50 // If the file doesn't exist, attempt a url fopen on the src link. 51 // This can occur with certain file replication plugins. 52 $post = get_post( $src ); 53 $src = load_image_to_edit( $src, $post->post_mime_type, 'full' ); 54 } else { 55 $src = wp_load_image( $src_file ); 56 } 57 } else { 58 $src = wp_load_image( $src_file ); 59 } 60 61 if ( ! is_resource( $src ) ) 53 62 return new WP_Error( 'error_loading_image', $src, $src_file ); 54 63 … … 60 69 } 61 70 62 if ( function_exists('imageantialias'))71 if ( function_exists( 'imageantialias' ) ) 63 72 imageantialias( $dst, true ); 64 73 … … 71 80 72 81 $dst_file = preg_replace( '/\\.[^\\.]+$/', '.jpg', $dst_file ); 82 83 // The directory containing the original file may no longer exist when 84 // using a replication plugin. 85 wp_mkdir_p( dirname( $dst_file ) ); 73 86 74 87 if ( imagejpeg( $dst, $dst_file, apply_filters( 'jpeg_quality', 90, 'wp_crop_image' ) ) ) … … 340 353 return apply_filters('file_is_displayable_image', $result, $path); 341 354 } 355 356 function load_image_to_edit($post_id, $mime_type, $size = 'full') { 357 $filepath = get_attached_file($post_id); 358 359 if ( $filepath && file_exists($filepath) ) { 360 if ( 'full' != $size && ( $data = image_get_intermediate_size($post_id, $size) ) ) { 361 $filepath = apply_filters('load_image_to_edit_filesystempath', path_join( dirname($filepath), $data['file'] ), $post_id, $size); 362 } 363 } elseif ( function_exists('fopen') && function_exists('ini_get') && true == ini_get('allow_url_fopen') ) { 364 $filepath = apply_filters('load_image_to_edit_attachmenturl', wp_get_attachment_url($post_id) , $post_id, $size); 365 } 366 367 $filepath = apply_filters('load_image_to_edit_path', $filepath, $post_id, $size); 368 if ( empty($filepath) ) 369 return false; 370 371 switch ( $mime_type ) { 372 case 'image/jpeg': 373 $image = imagecreatefromjpeg($filepath); 374 break; 375 case 'image/png': 376 $image = imagecreatefrompng($filepath); 377 break; 378 case 'image/gif': 379 $image = imagecreatefromgif($filepath); 380 break; 381 default: 382 $image = false; 383 break; 384 } 385 if ( is_resource($image) ) { 386 $image = apply_filters('load_image_to_edit', $image, $post_id, $size); 387 if ( function_exists('imagealphablending') && function_exists('imagesavealpha') ) { 388 imagealphablending($image, false); 389 imagesavealpha($image, true); 390 } 391 } 392 return $image; 393 }
Note: See TracChangeset
for help on using the changeset viewer.