产品 CSV 导入失败,经常不是“文件格式不对”这么简单。同一份文件可能通过文件检查,却在真正导入时因为属性选项、图片路径或关联商品数据失败。处理时最好保留 Magento 导出的样例文件,不要完全靠手工猜表头。
看到这些提示时,先查什么
Column names have duplicates
表头存在重复列,或不可见字符让两个字段看起来相同。用纯文本编辑器检查第一行,并确认文件编码为 UTF-8。
Invalid value for Attribute Set
CSV 中的 attribute_set_code 必须与后台属性集名称匹配。多余空格和大小写差异也可能造成失败。
Value for option does not exist
下拉、多选、颜色等属性的选项不存在。先在后台创建选项,或确认导入功能是否允许自动创建。多语言 Store View 的选项标签不要与默认范围混用。
图片列是另一个高发点
导入图片前,把文件放到配置允许的导入目录,并在 CSV 中填写正确的相对路径。Linux 区分大小写,Image.jpg 和 image.jpg 是两个文件。
常用图片列包括 base_image、small_image、thumbnail_image 和 additional_images。图片文件损坏或 PHP 缺少图像扩展,也会在处理阶段报错。
新增、更新和替换不要选错
- 新增/更新:适合日常维护,已存在 SKU 会更新。
- 替换:可能用导入数据替换现有实体,风险更高。
- 删除:按 SKU 删除商品,不适合用来“清理失败数据”。
第一次导入应先用 5–10 个商品在预发布环境测试。把简单商品跑通后,再处理可配置商品与子商品关联。
多选字段与分隔符
CSV 自身使用逗号分列,而多选属性和附加图片又需要内部多值分隔符。后台导入页面设置的 Multiple Value Separator 必须与文件一致,否则一串值会被当成一个不存在的选项。
导入成功以后
不要马上把文件扩大到几万行。先检查商品网站分配、状态、可见性、价格、库存和图片,再观察索引与 Cron 是否正常。若大文件超时,优先分批导入并检查 PHP、Web 服务器的上传与执行限制,而不是不断提高到无限值。

