The image_editor_save_pre WordPress PHP Filter allows you to modify the image editor instance before it’s streamed to the browser.
Usage
add_filter('image_editor_save_pre', 'your_custom_function', 10, 2); function your_custom_function($image, $attachment_id) { // your custom code here return $image; }
Parameters
- $image (WP_Image_Editor) – The image editor instance.
- $attachment_id (int) – The attachment post ID.
More information
See WordPress Developer Resources: image_editor_save_pre
Examples
Add watermark to image
Add a watermark to the image before it’s streamed to the browser.
add_filter('image_editor_save_pre', 'add_watermark_to_image', 10, 2); function add_watermark_to_image($image, $attachment_id) { $watermark_path = '/path/to/watermark.png'; $image->watermark($watermark_path, 100, 100, 50); return $image; }
Convert image to grayscale
Convert the image to grayscale before streaming to the browser.
add_filter('image_editor_save_pre', 'convert_image_to_grayscale', 10, 2); function convert_image_to_grayscale($image, $attachment_id) { $image->apply_filter('IMG_FILTER_GRAYSCALE'); return $image; }
Resize image
Resize the image to specific dimensions before streaming to the browser.
add_filter('image_editor_save_pre', 'resize_image', 10, 2); function resize_image($image, $attachment_id) { $width = 300; $height = 200; $image->resize($width, $height, false); return $image; }
Rotate image
Rotate the image by a specific angle before streaming to the browser.
add_filter('image_editor_save_pre', 'rotate_image', 10, 2); function rotate_image($image, $attachment_id) { $angle = 90; $image->rotate($angle); return $image; }
Flip image horizontally
Flip the image horizontally before streaming to the browser.
add_filter('image_editor_save_pre', 'flip_image_horizontally', 10, 2); function flip_image_horizontally($image, $attachment_id) { $image->flip(false, true); return $image; }