WordPress 上传图片自动压缩图片大小

图片太大会影响用户体验,加载老半天不出来,所以需要适当的压缩图片体积,下面教大家WordPress 上传图片自动压缩图片大小,注意哦,仅支持jpg格式。

后台」→「外观」→「编辑」→ 「functions.php」文件,把下面的代码添加进去:

function ajx_sharpen_resized_files( $resized_file ) {
 
    $image = wp_load_image( $resized_file );
    if ( !is_resource( $image ) )
        return new WP_Error( 'error_loading_image', $image, $file );
 
    $size = @getimagesize( $resized_file );
    if ( !$size )
        return new WP_Error('invalid_image', __('Could not read image size'), $file);
    list($orig_w, $orig_h, $orig_type) = $size;
 
    switch ( $orig_type ) {
        case IMAGETYPE_JPEG:
            $matrix = array(
                array(-1, -1, -1),
                array(-1, 16, -1),
                array(-1, -1, -1),
            );
 
            $divisor = array_sum(array_map('array_sum', $matrix));
            $offset = 0; 
            imageconvolution($image, $matrix, $divisor, $offset);
            imagejpeg($image, $resized_file,apply_filters( 'jpeg_quality', 90, 'edit_image' ));
            break;
        case IMAGETYPE_PNG:
            return $resized_file;
        case IMAGETYPE_GIF:
            return $resized_file;
    }
 
    return $resized_file;
}   
 
add_filter('image_make_intermediate_size', 'ajx_sharpen_resized_files',900);