wpseek.com
A WordPress-centric search engine for devs and theme authors



image_resize › WordPress Function

Since2.5.0
Deprecated3.5.0
image_resize ( $file, $max_w, $max_h, $crop = false, $suffix = null, $dest_path = null, $jpeg_quality = 90 )
Parameters: (7)
  • (string) $file Image file path.
    Required: Yes
  • (int) $max_w Maximum width to resize to.
    Required: Yes
  • (int) $max_h Maximum height to resize to.
    Required: Yes
  • (bool) $crop Optional. Whether to crop image or resize. Default false.
    Required: No
    Default: false
  • (string) $suffix Optional. File suffix. Default null.
    Required: No
    Default: null
  • (string) $dest_path Optional. New image file path. Default null.
    Required: No
    Default: null
  • (int) $jpeg_quality Optional. Image quality percentage. Default 90.
    Required: No
    Default: 90
See:
Returns:
  • (mixed) WP_Error on failure. String with new destination path.
Defined at:
Codex:

Scale down an image to fit a particular size and save a new copy of the image.

The PNG transparency will be preserved using the function, as well as the image type. If the file going in is PNG, then the resized image is going to be PNG. The only supported image types are PNG, GIF, and JPEG. Some functionality requires API to exist, so some PHP version may lose out support. This is not the fault of WordPress (where functionality is downgraded, not actual defects), but of your PHP version.


Source

function image_resize( $file, $max_w, $max_h, $crop = false, $suffix = null, $dest_path = null, $jpeg_quality = 90 ) {
	_deprecated_function( __FUNCTION__, '3.5.0', 'wp_get_image_editor()' );

	$editor = wp_get_image_editor( $file );
	if ( is_wp_error( $editor ) )
		return $editor;
	$editor->set_quality( $jpeg_quality );

	$resized = $editor->resize( $max_w, $max_h, $crop );
	if ( is_wp_error( $resized ) )
		return $resized;

	$dest_file = $editor->generate_filename( $suffix, $dest_path );
	$saved = $editor->save( $dest_file );

	if ( is_wp_error( $saved ) )
		return $saved;

	return $dest_file;
}