_wp_image_meta_replace_original( array $saved_data, string $original_file, array $image_meta, int $attachment_id ): array

In this article

This function’s access is marked private. This means it is not intended for use by plugin or theme developers, only in other core functions. It is listed here for completeness.

Updates the attached file and image meta data when the original image was edited.

Parameters

$saved_dataarrayrequired
The data returned from WP_Image_Editor after successfully saving an image.
$original_filestringrequired
Path to the original file.
$image_metaarrayrequired
The image meta data.
$attachment_idintrequired
The attachment post ID.

Return

array The updated image meta data.

Source

function _wp_image_meta_replace_original( $saved_data, $original_file, $image_meta, $attachment_id ) {
	$new_file = $saved_data['path'];

	// Update the attached file meta.
	update_attached_file( $attachment_id, $new_file );

	// Width and height of the new image.
	$image_meta['width']  = $saved_data['width'];
	$image_meta['height'] = $saved_data['height'];

	// Make the file path relative to the upload dir.
	$image_meta['file'] = _wp_relative_upload_path( $new_file );

	// Add image file size.
	$image_meta['filesize'] = wp_filesize( $new_file );

	// Store the original image file name in image_meta.
	$image_meta['original_image'] = wp_basename( $original_file );

	return $image_meta;
}

Changelog

VersionDescription
6.0.0The $filesize value was added to the returned array.
5.3.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.