WooCommerce 可下载产品与虚拟产品配置(图文详解)

图片[1]-WooCommerce 可下载产品与虚拟产品配置(图文详解)-WP独立站学院
生成摘要
AI 生成,仅供参考

一、虚拟产品与可下载产品有什么区别

WooCommerce 产品编辑面板左上角有两个复选框:Virtual(虚拟) 和 Downloadable(可下载)。它们不是互斥的,可以单独勾选,也可以同时勾选。

勾选方式是否有运费是否有文件下载订单是否自动完成典型用途
都不勾✅ 是❌ 否❌ 需手动发货普通实体商品
只勾 Virtual❌ 否❌ 否❌ 需手动处理在线咨询、服务预约
只勾 Downloadable✅ 是✅ 是❌ 需手动完成卖实体书附赠电子版
两个都勾❌ 否✅ 是✅ 自动完成*电子书、软件、音频

自动完成是订单级规则:只有当订单里的所有产品都同时勾选了 Virtual + Downloadable,付款后订单才会自动变成 Completed。只要订单里混了一个实体产品或只勾了 Virtual 的产品,整张订单就会停在 Processing,等你手动处理。

一句话:Virtual 管运费,Downloadable 管文件。纯数字产品两个都勾,实体+数字只勾 Downloadable。

产品数据面板的 Virtual 与 Downloadable 复选框(默认未勾选)

二、创建虚拟产品

虚拟产品不需要发货,适合服务类商品(在线咨询、设计服务、会员资格等)。勾选 Virtual 后,产品编辑页的 Shipping(配送)标签会消失。

🖥️ 2.1 操作步骤

  1. 进入 产品 → 新建产品
  2. 填写产品标题和描述
  3. 在产品数据面板左上角,勾选 Virtual
  4. 切到 General(常规)标签,填写 Regular price(常规价格)
  5. 点击 Publish 发布
只勾 Virtual 后,Shipping 配送标签从面板消失

⚠️ 2.2 注意事项

  • 勾选 Virtual 后,Shipping 标签直接从面板消失,不需要额外操作
  • 如果订单里只有虚拟产品,购物车和结账页不会出现运费字段
  • 但订单状态不会自动变成 Completed——除非产品同时勾选了 Downloadable,且订单内所有产品都满足这个条件
  • 如果订单里同时有虚拟产品和实体产品,仍然需要走完整配送流程

💡 虚拟产品不等于可下载产品。如果你卖的是服务(不需要给客户文件),只勾 Virtual 就行。如果卖的是电子书(需要客户下载文件),还要勾 Downloadable。


三、创建可下载产品

可下载产品在客户付款后提供文件下载链接,适合电子书、软件、音频、设计模板等。

📥 3.1 勾选 Downloadable

  1. 进入 产品 → 新建产品
  2. 填写产品标题和描述
  3. 在产品数据面板左上角,勾选 Downloadable
  4. 同时勾选 Virtual(纯数字产品推荐两个都勾,原因见第四章)
  5. 切到 General(常规)标签,此时会多出三个字段:Downloadable files、Download limit、Download expiry
勾选 Downloadable 后,General 标签出现下载文件区域

🗂️ 3.2 上传下载文件

  1. 在 Downloadable files 区域,点击 Add file 按钮
  2. 在 File name 输入框填文件名称(客户会看到这个名字),比如 产品使用手册.pdf
  3. 在 File URL 输入框右侧,点击 Choose file 按钮
  4. 弹出媒体库窗口,点击 Upload Files 上传你的文件,或从已有文件中选择
  5. 选中文件后点击 Insert 确认
  6. 如果一个产品有多个文件(比如 PDF + 视频),重复点击 Add file 逐个添加
点击 Choose file 弹出媒体库窗口上传文件

⚠️ 一定要通过产品编辑页的 Choose file 上传,不要直接把文件传到 WordPress 媒体库再复制 URL。WooCommerce 通过 Choose file 上传的文件会存到 wp-content/uploads/woocommerce_uploads/ 目录,该目录默认受 .htaccess 保护,无法通过 URL 直接访问。而媒体库是公开的,任何人拿到链接就能下载。

🔢 3.3 设置下载次数与有效期

在 General 标签中,文件下方有两个字段:

  • Download limit(下载次数限制):填数字,客户总共可下载这么多次。留空 = 不限次数
  • Download expiry(下载有效期):填数字,购买后多少天内可下载。留空 = 永久有效

操作示例:

  • 只想让客户下载 3 次 → Download limit 填 3
  • 30 天后链接失效 → Download expiry 填 30
  • 永久不限 → 两个字段都留空
Download limit 填 3、Download expiry 填 30

💰 3.4 设置价格并发布

  1. 在 General 标签的 Regular price 填写售价
  2. 如有促销价,填 Sale price(可选)
  3. 设置产品主图、分类等
  4. 点击 Publish 发布

四、虚拟 + 可下载组合:纯数字产品标准配置

卖电子书、软件、音频这类纯数字商品时,必须同时勾选 Virtual + Downloadable。这个组合有一个关键好处:订单付款后自动完成。

🔐 4.1 为什么同时勾选

只勾 Downloadable 不勾 Virtual,WooCommerce 会把产品当作实体产品处理:
– 订单支付后状态停在 Processing(处理中)
– 需要你手动把订单标记为 Completed(已完成)
– 客户才能拿到下载链接

同时勾选 Virtual + Downloadable 后:
– 订单支付后自动跳过 Processing,直接变成 Completed
– 客户立即在订单确认页、订单邮件、我的账户页看到下载链接
– 你不需要任何手动操作

⚠️ 注意前提:自动完成判断的是整张订单,不是单个产品。只有订单内所有产品都同时是 Virtual + Downloadable,订单才会自动 Completed。如果客户同一单里还买了实体商品或只勾了 Virtual 的服务,整张订单照常停在 Processing,下载链接也要等订单完成(或开启第五章的全局设置)才发放。

Virtual + Downloadable 组合:纯数字产品的标准配置

📝 4.2 配置步骤

  1. 进入 产品 → 新建产品,填标题和描述
  2. 勾选 Virtual + Downloadable
  3. 在 General 标签添加下载文件(操作见第三章 3.2)
  4. 填写 Download limit 和 Download expiry(可选)
  5. 填 Regular price
  6. 点击 Publish 发布

💡 如果只勾了 Downloadable 没勾 Virtual,客户结账时还会看到运费字段。这不是 bug,是 WooCommerce 默认逻辑——没标 Virtual 的产品都当作需要配送。


五、实体 + 可下载混合配置

卖实体商品同时附赠数字文件(实体书+电子版、硬件+驱动程序),只勾 Downloadable,不勾 Virtual。产品仍需发货,但客户也能下载附件。

📦 5.1 操作步骤

  1. 进入 产品 → 新建产品,填标题和描述
  2. 只勾选 Downloadable,不勾 Virtual
  3. 在 General 标签添加下载文件
  4. 填写 Download limit 和 Download expiry(可选)
  5. 在 Shipping 标签填写重量和尺寸(用于运费计算)
  6. 填 Regular price
  7. 点击 Publish 发布
实体 + 可下载混合:只勾 Downloadable,Shipping 标签保留

⚠️ 5.2 混合订单的下载权限

这种配置下,订单支付后状态停在 Processing,不会自动变成 Completed。客户在订单完成前看不到下载链接。

如果你希望客户付款后立刻能下载(不用等实体发货),需要开启一个全局设置:

  1. 进入 WooCommerce → 设置 → 产品 → 可下载产品
  2. 勾选 Grant access to downloadable products after payment(付款后授予下载权限)
  3. 点击 Save changes

开启后,即使订单还在 Processing 状态,客户也能下载文件。

💡 如果订单里同时有实体产品和可下载产品,建议开启这个选项。客户买了实体书能立刻看电子版,不用等快递到。


六、下载全局设置详解

这个设置页控制所有可下载产品的文件交付方式、访问权限和安全策略。

🛡️ 6.1 进入设置页

进入 WooCommerce → 设置 → 产品 → 可下载产品

可下载产品全局设置页

📋 6.2 File download method(文件下载方式)

下拉菜单有三个选项:

  • Force downloads(强制下载):通过 PHP 脚本读取文件,客户拿不到真实 URL。默认选项,推荐大多数场景。大文件可能因服务器超时导致下载失败。
  • X-Accel-Redirect/X-Sendfile:由 Nginx 或 Apache 服务器直接传输文件,性能最好。需要服务器安装对应模块,用前联系主机商确认。
  • Redirect only (insecure)(仅重定向,不安全):直接跳转到文件 URL,任何人拿到链接都能访问。仅在使用 Google Drive 等外部存储时需要选这个。
File download method 下拉的三个选项

选中 Force downloads 或 X-Accel-Redirect 后,还可以额外勾选 Allow using redirect mode (insecure) as a last resort——当主方式失败时自动降级为重定向,适合文件分散存在不同平台的情况。

🔒 6.3 访问限制

  • Downloads require login:勾选后要求客户登录才能下载。前提是关闭了游客结账(Guest Checkout),否则该选项无效。
  • Grant access to downloadable products after payment:勾选后,订单在 Processing 状态就开放下载权限,不用等到 Completed。用于实体+数字混合订单。

🆔 6.4 文件名安全

  • Append a unique string to filename for security:默认开启。给上传的文件名追加随机字符串,让 URL 更难被猜测。建议保持开启。该设置只影响设置变更后上传的文件,之前已上传的文件不受影响。

📁 6.5 Approved download directories(认可的下载目录)

同一设置页顶部有个相邻标签 Approved download directories。这个功能给可下载文件的来源建了一份 URL 路径白名单:只有以你认可目录路径开头的文件 URL 才能被保存进产品。

它主要约束的是能编辑产品的店员(Shop Manager)或编辑角色——防止他们往产品里填入来路不明的第三方下载链接;管理员(Administrator)添加的链接不受此限制。如果你的店只有管理员自己在传产品,这个功能保持默认即可。

Approved download directories 目录白名单列表

七、客户下载流程与权限管理

📩 7.1 客户在哪里拿到下载链接

客户付款后可以通过以下途径获取下载链接:

  • 订单确认页:支付成功后跳转的 Thank You 页面,会显示下载链接
  • 订单邮件:WooCommerce 发送的订单完成通知邮件中包含下载链接
  • 我的账户页:登录后进入 My Account → Downloads 可查看所有已购下载文件

⚠️ 某些支付网关采用异步通知机制(如 IPN),如果通知延迟或失败,订单会停留在「未支付」状态,下载链接也就不会出现在订单确认页。遇到这类情况,先检查网关的通知回调是否正常,而不是去改下载设置。

🔧 7.2 在订单中管理下载权限

如果需要手动调整某个客户的下载权限(比如延长有效期、重置下载次数):

  1. 进入 WooCommerce → 订单
  2. 找到对应订单,点击编辑
  3. 向下滚动找到 Downloadable product permissions(下载产品权限)区域
  4. 这里可以看到每个文件的下载次数使用情况和到期时间
  5. 可以撤销访问权限、重新授权、或修改剩余下载次数
订单编辑页:可下载产品的权限(下载次数、到期时间与撤销/授权)

🔄 7.3 更新已售产品的下载文件

如果你修改了已售产品的下载文件:

  • 编辑现有文件条目(改名称或 URL):已购客户的下载链接会同步更新,但下载次数和有效期不变
  • 添加新文件条目:不会影响已购客户,只有新买家才能看到新文件

如果你希望所有客户都拿到最新版本,编辑现有条目而不是新增。

📊 7.4 查看下载报告

  1. 进入 WooCommerce → 分析 → 下载
  2. 可以查看每个文件的下载次数、下载客户、下载时间分布
  3. 用于判断数字产品是否被频繁下载、是否有异常下载行为
© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 共15条

请登录后发表评论

    暂无评论内容