Magento 2 产品批量上传图文教程

批量上传产品是 Magento 运营中一项核心且频繁的任务,正确执行可以极大地节省时间,提高效率。

magento产品批量上传图文教程
(图片来源网络,侵删)

第一部分:准备工作 (至关重要)

在开始之前,请务必完成以下准备工作,这能避免 90% 的错误。

步骤 1:准备产品数据

您需要一个包含所有产品信息的文件,通常是 CSV (逗号分隔值) 格式。

  1. 获取模板

    • 这是最关键的一步,请勿自己创建 CSV 文件,因为 Magento 有特定的格式要求。
    • 登录您的 Magento 2 后台。
    • 导航至 系统 > 数据迁移 > 数据导入/导出 > 导出文件格式
    • 点击 添加新行,然后点击 生成文件 按钮。
    • 在弹出的窗口中,选择 Products 作为实体类型,然后点击 生成文件
    • 系统会生成一个 products.csv 模板文件。下载并保存这个文件
  2. 使用 Excel 或 Google Sheets 编辑模板

    magento产品批量上传图文教程
    (图片来源网络,侵删)
    • 用 Microsoft Excel、Google Sheets 或其他支持 CSV 的软件打开下载的 products.csv 文件。
    • 第一行是标题行,包含了所有可用的字段(如 sku, name, description, price, status 等),请勿修改这些标题。
    • 从第二行开始,逐行填写您要导入的产品信息。
  3. 填写产品数据 (关键字段示例)

    • sku: 产品唯一标识符,必须唯一,不能为空,这是最重要的字段。
    • name: 产品名称。
    • attribute_set_code: 产品属性集,如果您不确定,请在后台 产品 > 属性 中查看您的属性集名称(通常是 Default)。
    • type: 产品类型,常见值:simple, configurable, virtual, downloadable,简单产品用 simple
    • price: 产品价格(不含税)。
    • status: 产品状态Enabled (启用) 或 Disabled (禁用)。
    • visibility: 产品可见性Catalog, Search (在目录和搜索中可见), Search (仅在搜索中可见), Not Visible Individually (不可见,通常用于可配置产品的子产品)。
    • qty: 库存数量。
    • is_in_stock: 是否有货。1 是,0 否。
    • category_ids: 分类 ID,将产品分配到指定分类,格式为 分类ID1,分类ID2,您需要在后台 内容 > 分类 中找到每个分类的 ID。
    • description: 产品描述(支持 HTML)。
    • short_description: 简短描述。
    • weight: 产品重量(如果适用)。
    • tax_class_name: 税率类名称,如 Taxable Goods (应税商品),请在后台 商店 > 税 > 税类 中确认。

    提示:您不需要填写所有字段,只需填写您需要设置的字段即可,其他字段可以留空。

步骤 2:准备图片

Magento 2 的图片导入是通过 URL 来实现的。

  1. 上传图片到服务器

    magento产品批量上传图文教程
    (图片来源网络,侵删)
    • 您需要将所有产品图片上传到您的网站服务器或可公开访问的 CDN 上。
    • 推荐做法:在 Magento 的 pub/media/import/ 目录下创建一个文件夹(product_images),然后将所有图片上传到这个文件夹,这样路径会更简单。
  2. 获取图片 URL

    • 如果您上传到了 pub/media/import/product_images/ 文件夹,那么图片的 URL https://您的域名.com/pub/media/import/product_images/图片名.jpg
    • 如果您上传到了其他地方,请使用完整的、可公开访问的 URL。
  3. 在 CSV 文件中添加图片路径

    • 在您的 CSV 模板中,找到与图片相关的列,常见的有:
      • image: 主图 URL。
      • small_image: 缩略图 URL,通常与主图相同。
      • thumbnail: 画廊图缩略图 URL,通常也与主图相同。
      • additional_images: 额外图片/画廊图片 URL,如果有多个,用逗号分隔,img1.jpg,img2.jpg

    示例: | sku | name | image | small_image | additional_images | | :--- | :--- | :--- | :--- | :--- | | simple-001 | T-Shirt Red | https://yourdomain.com/pub/media/import/product_images/tshirt_red.jpg | https://yourdomain.com/pub/media/import/product_images/tshirt_red.jpg | tshirt_red_back.jpg,tshirt_red_model.jpg |


第二部分:执行批量导入

万事俱备,可以开始正式导入了。

步骤 1:登录 Magento 后台

步骤 2:进入导入工具

导航至 系统 > 数据迁移 > 数据导入/导出 > 导入

步骤 3:选择行为

在导入页面,首先选择您要执行的操作。

  • Add/Update: (最常用) 如果产品不存在则添加,如果已存在(根据 SKU 判断)则更新。
  • Replace: 删除所有现有产品,然后导入文件中的所有产品。(慎用!)
  • Delete: 根据 CSV 文件中的 SKU 删除产品。

对于首次上传或更新产品,请选择 Add/Update

步骤 4:上传文件

  1. 点击 选择文件 按钮,选择您编辑好的 products.csv 文件。
  2. 实体类型 下拉菜单中,选择 Products
  3. 行为 已经在第一步选择,这里会自动填充。

步骤 5:检查映射 (非常重要)

这是导入前的最后检查环节,确保 Magento 能正确理解您的 CSV 文件。

  1. 点击 检查数据 按钮。

  2. 系统会解析您的 CSV 文件,并显示一个 映射 页面。

  3. 检查列映射

    • 左侧是您的 CSV 文件标题行(Column)。
    • 右侧是 Magento 的属性字段。
    • 系统通常会自动匹配大部分字段(如 sku -> sku, name -> name)。
    • 您需要手动检查并修正不匹配或缺失的字段
      • 如果您的 CSV 中有 category_ids 这一列,但 Magento 对应的是 category_ids,确保它们被正确关联。
      • 如果您的 CSV 中有自定义属性,也需要在这里手动选择对应的属性。
  4. 检查文件编码:确保编码是 UTF-8,如果不是,请转换您的 CSV 文件。

  5. 检查分隔符:通常是逗号 。

  6. 点击 确认映射

步骤 6:执行导入

  1. 确认映射无误后,点击 导入 按钮。
  2. 系统会开始处理您的文件,您会看到一个进度条。
  3. 请耐心等待,导入时间取决于产品数量和服务器性能。不要刷新页面或关闭浏览器

第三部分:验证与故障排除

导入完成后,需要检查结果。

步骤 1:检查导入结果

导入成功后,系统会显示一个成功消息,并可能提供一个查看日志的链接。

  • 查看日志:点击日志链接,可以查看哪些产品成功,哪些失败,对于失败的产品,日志中通常会给出错误原因(如:SKU 重复、必填字段为空、图片 URL 无效等)。

步骤 2:验证产品

  1. 后台验证

    • 导航至 产品 目录。
    • 尝试搜索您刚刚导入的 SKU,看是否能找到产品。
    • 点击进入产品编辑页面,检查所有信息(名称、价格、描述、分类、图片等)是否正确显示。
  2. 前台验证

    • 清除您的 Magento 缓存(系统 > 工具 > 缓存管理,全选并刷新)。
    • 访问您的网站前台,进入相应的分类页面,查看新产品是否显示,价格、图片是否正常。

常见问题与解决方案

问题现象 可能原因 解决方案
导入失败,提示 "Invalid file format" 文件编码不是 UTF-8,或使用了错误的分隔符。 将 CSV 文件另存为 UTF-8 编码格式,检查分隔符是否为逗号。
导入失败,提示 "SKU already exists" CSV 文件中有重复的 SKU,或该 SKU 已存在于系统中。 检查并删除 CSV 文件中的重复行,如果是要更新现有产品,确保行为选择的是 "Add/Update"。
产品导入成功,但图片不显示 图片 URL 错误、图片文件不存在、或目录权限问题。 检查 CSV 中的图片 URL 是否正确且可访问(在浏览器中打开 URL 看是否能显示图片)。
确保 pub/media 目录有写入权限。
检查 pub/media/import/ 目录是否存在并有权限。
产品未出现在指定分类 分类 ID 错误,或分类本身不存在。 在后台 内容 > 分类 中,找到目标分类,复制其 ID。
检查 CSV 中的 category_ids 字段是否填写了正确的 ID。
导入后价格显示不正确 税率类设置错误,或价格本身有误。 检查 CSV 中的 price 字段是否正确。
检查 tax_class_name 是否与后台设置的税率类名称完全匹配。

Magento 2 的批量导入功能虽然强大,但需要细心和耐心,记住成功的关键:

  1. 使用官方模板
  2. 数据准备要充分,特别是 SKU 和图片 URL。
  3. 导入前务必检查映射
  4. 导入后一定要验证,包括后台和前台。

希望这份详细的图文教程能帮助您顺利完成 Magento 2 产品的批量上传工作!