You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用WooCommerce API上传.avif产品图片时遭遇woocommerce_product_image_upload_error错误

解决WooCommerce API上传AVIF图片报错"woocommerce_product_image_upload_error"的方案
  • 补全WooCommerce API的文件类型白名单
    WooCommerce默认未将AVIF纳入API允许的产品图片格式列表,需手动添加。将以下代码添加到主题的functions.php文件或自定义插件中:
add_filter( 'woocommerce_rest_upload_image_mime_types', 'allow_avif_images_rest_api' );
function allow_avif_images_rest_api( $mime_types ) {
    $mime_types['avif'] = 'image/avif';
    return $mime_types;
}
  • 配置服务器端AVIF MIME类型
    即便前端能显示AVIF,服务器可能未正确识别其MIME类型,需针对性配置:

    • Apache服务器:在网站根目录的.htaccess文件中添加
      AddType image/avif .avif
      
    • Nginx服务器:在nginx.conf或站点配置文件中添加
      types {
          image/avif avif;
      }
      

    配置完成后重启服务器生效。

  • 规范API请求参数
    通过Make、Google Sheets等工具调用API时,确保:

    • 请求的Content-Type设置为multipart/form-data
    • 文件上传字段名称为file,且明确指定MIME类型为image/avif,避免工具默认识别为未知类型
  • 升级WooCommerce及WordPress版本
    旧版本WooCommerce对AVIF格式支持可能存在缺陷,建议升级到最新稳定版,同时同步更新WordPress核心,排除版本兼容问题。

  • 排查插件冲突
    临时禁用所有非必要插件,仅保留WooCommerce,再次尝试API上传AVIF图片。若上传成功,再逐个启用插件,定位导致冲突的插件(多为图片优化类插件拦截了API上传请求)。

  • 检查文件权限与大小限制
    确保wp-content/uploads目录权限为755,同时在服务器的php.ini文件中确认upload_max_filesize和post_max_size参数值足够大,避免因文件大小超限导致上传失败。

内容的提问来源于stack exchange,提问作者Jean-Baptiste Delame

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 23:39:50