钩子文档

jpeg_quality

💡 云策文档标注

概述

jpeg_quality 过滤器用于调整 JPEG 图像压缩质量,以保持向后兼容性。它主要在编辑器初始化或手动调用 set_quality() 方法时应用,并受 WP_Image_Editor::set_quality() 方法优先级影响。

关键要点

  • 过滤器用于修改 JPEG 压缩质量,范围从 0(低)到 100(高)。
  • 应用场景包括初始编辑器实例化或手动运行 set_quality() 方法时。
  • 过滤器在 'image_resize' 和 'edit_image' 两个上下文中评估。
  • WP_Image_Editor::set_quality() 方法优先级高于此过滤器。
  • 相关函数包括 wp_save_image_file() 和 WP_Image_Editor::set_quality()。

代码示例

function my_prefix_regenerate_thumbnail_quality() {
    return 80;
}
add_filter( 'jpeg_quality', 'my_prefix_regenerate_thumbnail_quality');

注意事项

  • 仅刷新网站不会重新压缩图像,需要使用插件重新生成缩略图和派生尺寸。
  • 代码片段应直接包含在文档中,而非外部托管。

📄 原文内容

Filters the JPEG compression quality for backward-compatibility.

Description

Applies only during initial editor instantiation, or when set_quality() is run manually without the $quality argument.

The WP_Image_Editor::set_quality() method has priority over the filter.

The filter is evaluated under two contexts: ‘image_resize’, and ‘edit_image’, (when a JPEG image is saved to file).

Parameters

$qualityint
Quality level between 0 (low) and 100 (high) of the JPEG.
$contextstring
Context of the filter.

Source

$quality = apply_filters( 'jpeg_quality', $quality, 'image_resize' );

Changelog

Version Description
2.5.0 Introduced.

User Contributed Notes

  1. Skip to note 4 content

    To change JPEG Compression, temporarily add the below code to functions.php then refresh the site to re-compress all thumbnails on the site.

    function my_prefix_regenerate_thumbnail_quality() {
    	return 80;
    
    }
    
    add_filter( 'jpeg_quality', 'my_prefix_regenerate_thumbnail_quality');