image_resize()WP 2.5.0

Deprecated from version 3.5.0. It is no longer supported and can be removed in future releases. Use wp_get_image_editor() instead.

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.

No Hooks.


Mixed. WP_Error on failure. String with new destination path.


image_resize( $file, $max_w, $max_h, $crop, $suffix, $dest_path, $jpeg_quality );
$file(string) (required)
Image file path.
$max_w(int) (required)
Maximum width to resize to.
$max_h(int) (required)
Maximum height to resize to.
Whether to crop image or resize.
Default: false
File suffix.
Default: null
New image file path.
Default: null
Image quality percentage.
Default: 90



Since 2.5.0 Introduced.
Deprecated Since 3.5.0 Use wp_get_image_editor()

Code of image_resize() WP 6.0

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;