Linux 软件免费装
Banner图

Coldstash – Archive Old Orders for WooCommerce

开发者 nareknovembit
更新时间 2026年10月28日 17:49
PHP版本: 8.1 及以上
WordPress版本: 7.1
版权: GPLv2 or later
版权网址: 版权信息

标签

woocommerce database cleanup archive orders old orders order cleanup

下载

1.0.0

详情介绍:

Coldstash archives old WooCommerce orders without deleting them. Completed orders from years ago move out of the live order tables into archive tables in the same database. You can still search them, open them read-only, and restore any of them with its original order number. Orders are the fastest-growing data in a WooCommerce store. Every sale adds order rows, line items, item meta and order notes, and years of history make the live order tables large, which is what every order query, order screen and migration has to work through. Deleting old orders is the usual cleanup advice, but it loses history your accounting, customers and support may still need. Coldstash is the middle ground: a smaller set of live orders, and the old ones safely kept. If you came here looking for a way to bulk delete old WooCommerce orders, archiving gets you the cleanup without the risk. Who it is for What makes it safe What it skips, on purpose Orders that are still in progress, orders newer than your age threshold (24 months by default, at least 12), orders with refunds, orders with active download permissions, and anything attached to WooCommerce Subscriptions, Bookings or Memberships. Every exclusion is shown with its reason before you run anything. WP-CLI wp coldstash preview, run, status, restore <id> / restore --all and verify give you full control from the command line. Requirements Requires High-Performance Order Storage (HPOS) with compatibility-mode sync turned off. Stores on legacy post-based order storage are not supported; the plugin stays idle and tells you why.

安装:

  1. Install and activate WooCommerce, and make sure High-Performance Order Storage is enabled under WooCommerce → Settings → Advanced → Features, with compatibility mode off.
  2. Install Coldstash – Archive Old Orders for WooCommerce from Plugins → Add New, or upload the zip, and activate it.
  3. Go to WooCommerce → Coldstash. Check the Settings tab (24 months, completed and cancelled orders by default), review which orders are eligible and why others are excluded, then click "Start archiving".
Archiving runs in the background with Action Scheduler, in small batches, and can be stopped at any time.

屏幕截图:

  • The archive browser: search archived orders, filter by status, restore one, many or all.
  • A read-only archived order, with a one-click Restore that keeps the original order number.
  • Settings: how old an order must be, which statuses to archive, and what happens on uninstall.

升级注意事项:

1.0.0 Initial release.

常见问题:

How do I clean up old WooCommerce orders without deleting them?

Install Coldstash, choose how old an order must be (24 months by default, at least 12) and which statuses to archive, then click "Start archiving". Old orders move into archive tables in the same database, and you can restore any of them at any time.

Should I delete old WooCommerce orders or archive them?

Archive them. Deleting shrinks the order tables too, but it is permanent: the order history your accounting, tax records, customer support and repeat customers rely on is gone. Archiving moves old orders out of the live tables just as effectively, and any of them can come back with its original order number.

Will it make WooCommerce faster?

It depends on what is slow. With HPOS, WooCommerce's order screens are already fast at large sizes. What grows without limit is the order meta, line item and order note tables, and that is what anything joining order data has to work through: exports, custom reports and integrations. Archiving keeps those live tables at the size of your recent orders. It does not speed up the storefront, and it does not shrink the database as a whole.

Does this delete my orders?

No. Orders are moved to archive tables in the same database and can be restored at any time, individually, in bulk or all at once. Nothing is deleted on archive, on deactivation, or on uninstall.

Does it make my database smaller?

It makes the live order tables smaller, which is where WooCommerce reads and writes orders. The archive lives in the same database, so the database as a whole stays about the same size. If you want a smaller database overall, Coldstash is not a deletion tool and will not do that.

Will my WooCommerce Analytics reports change?

No. That is the central design decision: WooCommerce Analytics reads its own lookup tables, and Coldstash never touches them, so your revenue history stays the same. One caveat: WooCommerce's "Regenerate Analytics data" tool rebuilds reports from the live order tables and would drop archived orders. Coldstash warns you on that screen; use "Restore all" first, regenerate, then archive again.

Can I restore an archived order?

Yes. Open WooCommerce → Coldstash → Archived orders, find the order by number, customer, email, product or transaction ID, and click Restore. It comes back with the same order number, and you can edit, refund or resend it like any other order. "Restore all" puts every archived order back in the background.

If I restore an order, will it be archived again?

Not if you restored it on its own: it stays in the live tables and shows up as "Restored from the archive" in the exclusion list. Orders put back with "Restore all" are treated like any other order, so the next archive run can archive them again.

Can I choose which orders are archived?

Yes, under WooCommerce → Coldstash → Settings: how old an order must be (at least 12 months), which statuses to archive (completed, cancelled, failed), and whether orders with active downloads stay live. Orders that are pending, processing or on hold are never archived.

Does it work with HPOS? Does it work without HPOS?

It requires High-Performance Order Storage (HPOS), WooCommerce's order tables, with compatibility-mode sync turned off. Without HPOS, or while orders are still synced to the posts table, the plugin stays idle and tells you why, because archiving would not reclaim anything.

Does it work with WooCommerce Subscriptions, Bookings or Memberships?

Orders linked to subscriptions, bookings or memberships are detected and left in the live tables, so renewals and access keep working.

What happens if I deactivate or delete the plugin?

Deactivating keeps everything. Deleting keeps the archive tables too, so no order is ever lost. To leave cleanly, use "Restore all" on the Archived orders screen first; once the archive is empty you can choose, under Settings, to remove the tables when the plugin is deleted.

Does it handle personal data requests (GDPR)?

Yes. Archived orders are included in WordPress's "Export Personal Data" and "Erase Personal Data" tools. Erasure follows WooCommerce's own "Remove personal data from orders on request" setting, exactly as it does for live orders.

更新日志:

1.0.0