wp-includes/media.php:1006Determines the encode quality WordPress would use for an image.
$mime_typestring$sizearrayoptionalarray()$widthint
$heightint
$default_qualityint|nulloptionalnullint2 hooks fire while wp_get_image_encode_quality() runs, in this order:
Filters the default image compression quality setting.
Filters the JPEG compression quality for backward-compatibility.
function wp_get_image_encode_quality( string $mime_type, array $size = array(), ?int $default_quality = null ): int { if ( null === $default_quality ) { // Mirror WP_Image_Editor::get_default_quality(): WebP defaults to 86, everything else to 82. $default_quality = ( 'image/webp' === $mime_type ) ? 86 : 82; } /** This filter is documented in wp-includes/class-wp-image-editor.php */ $quality = apply_filters( 'wp_editor_set_quality', $default_quality, $mime_type, $size ); if ( 'image/jpeg' === $mime_type ) { /** This filter is documented in wp-includes/class-wp-image-editor.php */ $quality = apply_filters( 'jpeg_quality', $quality, 'image_resize' ); } if ( ! is_numeric( $quality ) ) { $quality = $default_quality; } else { $quality = (int) $quality; } // Reset out-of-range values to the default, matching WP_Image_Editor::set_quality(). if ( $quality < 0 || $quality > 100 ) { $quality = $default_quality; } // Allow 0, but squash to 1, matching WP_Image_Editor::set_quality(). if ( 0 === $quality ) { $quality = 1; } return $quality;}Introduced in 7.1.0.
Signature, return type and hooks compared across 1 parsed release.
src/wp-includes/media.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.