如果您正在考虑使用或已经在使用 WooCommerce,这篇文章可能对您的业务非常有用。经过多年发展,WooCommerce 推出了高性能订单存储 (HPOS) 功能。这是一个重大的升级,承诺在多个层面显著改变整体体验。
在本文中,我们将解释 HPOS 的具体内容,它是如何加速您的 WooCommerce 网站的,以及如何在您的 WordPress 安装中启用它。让我们深入探讨吧!
什么是 WooCommerce HPOS 以及它如何改善订单存储?
高性能订单存储,之前称为” 自定义订单表”,是一项始于多年前的功能,旨在通过重构数据库中订单数据的存储方式来提升 WooCommerce 性能。
具体来说,它替换了默认的基于 WordPress 文章的订单存储方式,转而使用专用的自定义数据库表来存储订单和订单地址等数据。这种方式在处理大量订单时更加高效,最终提升整体性能。
高性能订单存储是这个项目的重大改进。它承诺提供高达 40 倍的订单处理速度、更快的订单创建和更快的结账流程。
启用高性能订单存储的三大理由
让我们来讨论一下高性能订单存储如何改善您的 WooCommerce 网站。
性能提升
作为主要目标,HPOS 通过优化订单数据的存储来增强您的 WooCommerce 商店性能。将订单数据存储在自定义结构中减少了 WordPress 数据库的负载。这可以防止数据库膨胀并提高数据库查询效率。由于这一点,您网站的搜索和报告功能也会变得更快、更高效。
总体而言,您将获得更快的页面加载时间、更快的订单处理速度以及改进的整体网站响应性,从而为客户提供更好的用户体验。
可扩展性
现在系统可以更高效地处理大量订单。因此,如果您的商店经历显著增长和订单数量增加,HPOS 将能够在没有显著性能损失的情况下满足需求。
启用 HPOS 使您的网站与 WooCommerce 的未来性能改进保持一致,确保您的商店将准备好受益于这些增强功能。
搜索引擎会欣赏更好的客户购物体验。更快的性能将对您的排名产生积极影响,降低跳出率并提高客户满意度。
谷歌和其他搜索引擎将页面加载时间视为搜索结果排名的因素,因此来自 HPOS 的性能提升可能会改善您的 SEO 。
如何启用高性能订单存储
WooCommerce 已经提供了尽可能平滑的方式来从您现有的商店过渡到具有 HPOS 功能的商店。
正如我们一直建议的,在进行任何更改之前,您应该创建一个暂存环境进行测试,然后推送到实时站点。
注意:我们还建议您研究官方文档。 HPOS 承诺带来重大改进,但毕竟这是一个新功能,一些扩展可能尚未与新的数据库架构兼容。好消息是,在这种情况下,您的 wp-admin 仪表板中会出现警告消息。
要检查 HPOS 是否已启用,您需要进入 WooCommerce 设置并在高级选项卡下找到功能部分。

如果您的商店是新的,那么 HPOS 已经默认启用。
如果您的商店在 2023 年 10 月 10 日之前创建,HPOS 将不会默认启用,以确保您的商店不会突然遇到任何问题。
但是,您可以通过勾选启用兼容模式复选框来选择启用 HPOS 。这会将订单同步到文章表。
在 HPOS 的这个过渡阶段,您可能需要进行一些工作来将您的商店与新的数据库结构同步,所以请耐心等待。
一旦勾选该复选框并保存更改,wc_schedule_pending_batch_process 操作将开始运行以检查是否有需要回填的订单。如果是这样,将触发 wc_run_batch_process 操作。
如果您按照 WooCommerce -> 状态菜单项并在计划操作选项卡下查看,您可以在计划操作表中看到这些操作。

您可以点击运行按钮或等待它按自己的计划运行。此操作一次处理 25 个订单,这意味着如果有更多订单,将安排更多操作。
一旦此过程完成,订单表将同步,您的商店现在将利用高性能订单存储。
当然,您始终可以选择使用”WordPress 文章存储 (传统)” 选项并保持旧功能而不使用 HPOS 。但让我们指出为什么我们建议采用其他方式;
关于兼容模式
如果在启用兼容模式时检查数据库表的结构,您会注意到一些与订单相关的元数据仍然存储在 postmeta 表中。这意味着虽然 HPOS 将订单同步到自定义表,但一些与订单相关的额外详细信息和元数据可能仍然保留在 postmeta 表中。
但这样做是有原因的。
将此视为一个临时过渡阶段,直到 HPOS 和您网站上安装的所有第三方插件之间都能顺畅运行。从技术上讲,有些插件尚未更新以与 HPOS 配合工作,有些插件使用直接数据库查询,或避免使用 WooCommerce 开发人员提供的官方 API 来访问订单数据。
因此,WooCommerce 不会自动删除存储在文章/文章元表中的订单数据,以防止在运行第三方插件时出现某些问题。帮助商家安全执行此操作的工具将在开发的下一阶段推出。
常见问题解答
WooCommerce 订单在数据库中的存储位置和方式?
WooCommerce 引入了高性能订单存储,它将订单存储在单独的数据库表中:
- _wc_orders
- _wc_orders_meta
- _wc_order_addresses
- _wc_order_operational_data
一些信息仍保留在传统的文章表中。
具体来说,_wc_orders 表存储 WooCommerce 订单。这些订单也存在于 _posts 表中,作为 shop_order 类型的自定义文章。
_wc_orders 表存储订单 ID,它与 _posts 表中 shop_orders 类型的相应文章 ID 匹配。订单状态,如”wc-processing”,在两个表中也保持相同,确保这些数据保持同步。
在 _wc_orders_meta 表中,您可以看到订单的账单和运输详细信息。其余详细信息位于 _postmeta 表中。
_wc_order_addresses 表包含附加到订单的地址,而 _wc_order_operational_data 保存订单的结账信息。
如何加速我的 WooCommerce?
您可以采用各种方法来增强 WooCommerce 的速度。为了加速您的 WooCommerce 商店,启用高性能订单存储 (HPOS),这可以增强数据库中订单数据的存储。以下是操作步骤:
- 检查兼容性:首先,检查您的商店是否符合 HPOS 条件。如果您的商店是新的,HPOS 可能已经启用。如果您在 2023 年 10 月 10 日之前启动商店,您需要启用它。为此,请在 WooCommerce 设置中勾选” 启用兼容模式” 复选框。您可以在高级选项卡下找到此选项。
- 同步您的商店:一旦启用 HPOS,您的商店需要同步到新的数据库结构。此过程会自动启动,但您可以在计划操作表中监控它。
如何升级老站点切换至 HPOS?
要将老站点升级切换到高性能订单存储 (HPOS),请按照以下步骤操作:
- 创建完整备份:在进行任何更改之前,请务必备份您的网站数据库和文件,以防出现任何问题。
- 检查插件兼容性:在 WooCommerce 状态页面中查看是否有插件与 HPOS 不兼容的警告。确保所有关键插件都已更新到支持 HPOS 的版本。
- 启用兼容模式:进入 WooCommerce → 设置 → 高级 → 功能,勾选” 启用兼容模式” 复选框并保存更改。
- 监控同步过程:系统会自动开始将现有订单同步到新的数据库表。您可以在 WooCommerce → 状态 → 计划操作中监控 wc_run_batch_process 操作的进度。
- 测试功能:同步完成后,在暂存环境中全面测试所有订单相关功能,包括创建新订单、查看订单详情、处理退款等。
- 逐步过渡:如果一切正常,可以在生产环境中重复上述步骤。建议在业务低峰期进行操作。
整个同步过程可能需要一些时间,具体取决于您商店中的订单数量。系统会分批处理订单,每次处理 25 个订单,确保不会对服务器造成过大压力。
如果遇到不兼容的插件,需要及时进行更新和替换。
完成切换后,您的 WooCommerce 商店将享受到更快的订单处理速度、更好的数据库性能以及为未来扩展做好准备的基础架构。



