解决Wordpress使用阿里云OSS图片存在翻转问题

AI摘要

Wordpress上传图片存在翻转问题,可通过在functions.php添加代码自动为图片URL添加?x-oss-process=image/auto-orient,1后缀解决,仅对图片文件生效。

❌Wordpress 上传某些图片会存在翻转问题;

✅解决方法是在Wordpress主题文件根目录functions.php 添加一段代码解决,解决上传图片后,文章会显示90°翻转问题;代码只对图片生效,其他文件格式不会添加(?x-oss-process=image/auto-orient,1);

❗代码

function add_suffix_to_image_url( $url, $post_id ) {
    // 获取文件的 MIME 类型
    $mime_type = get_post_mime_type( $post_id );

    // 判断是否为图片类型
    if ( strpos( $mime_type, 'image/' ) === 0 ) {
        $oss_suffix = '?x-oss-process=image/auto-orient,1';
        $url .= $oss_suffix;
    }

    return $url;
}
add_filter( 'wp_get_attachment_url', 'add_suffix_to_image_url', 10, 2 );

📍工作原理:

  1. get_post_mime_type()
    • 通过附件 ID 获取文件的 MIME 类型,比如 image/jpegimage/png
  2. 判断是否为图片
    • 使用 strpos() 检查 MIME 类型是否以 image/ 开头,仅对图片文件生效。
  3. 添加后缀
    • 如果是图片,自动添加 ?x-oss-process=image/auto-orient,1

📍效果:

  • 上传的图片 URL 会自动附加后缀。
  • 其他文件类型(如 PDF、ZIP、MP3 等)不会受到影响。

Saiyintai

软件测试工程师

相关推荐

阿里云内网传文件:轻量服务器与ECS高效迁移指南

为解决阿里云宝塔轻量云服务器因CentOS 7不支持高版本PHP而需重装Ubuntu 24.04的问题,需迁移约10G文件。为规避外网传输慢和费用,利用同区域服务器内网互通,通过安装ossutil工具,将OSS内网文件快速复制到目标地址,使传输时间从数小时大幅缩短至几分钟甚至几秒。

Linux设置挂载阿里云OSS

在Linux系统安装ossfs工具,配置密钥后将阿里云OSS存储桶挂载到本地目录,支持内网访问和卸载操作。

暂无评论