| 开发者 | sapphireit |
|---|---|
| 更新时间 | 2026年10月28日 12:54 |
| PHP版本: | 8.0 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
/wp-content/plugins/sapphireit-publish-guard, or go to Plugins, then Add New, then Upload Plugin and choose sapphireit-publish-guard.zip.No. Enforcement applies only when a product moves into Published or Scheduled. A live product that later fails a check shows the problem in its checklist and in the products list, but it is never taken offline automatically.
Only if you allow it. Turn on "Allow users who can manage WooCommerce to publish anyway" on the settings screen. It is off by default, so nobody can publish past a failing required check.
WP-CLI, cron jobs and requests with no signed-in user are never blocked. The WooCommerce CSV product importer and REST API clients run as a signed-in user, so their saves are checked like any other. Under the default "All signed-in requests" scope, an imported product that fails a required check is saved as a draft instead of being published. To exempt them, choose "Admin editor screens only" under "Enforcement applies to". Variable and grouped products are not blocked because their variations or linked products come later in the import file: "Variations and grouped products" is a warning by default. Scheduled publishing is the one exception to the cron rule: a scheduled product that fails its required checks when its time comes is returned to draft.
Yes. Under "Enforcement applies to", choose "Admin editor screens only". The default, "All signed-in requests", also covers the REST API and code that saves products for a signed-in user.
The classic WooCommerce product editor, which from WooCommerce 11.0 is the only one. On WooCommerce 9.x and 10.x, where the product block editor was an optional beta, the checklist panel does not appear in it, but publishing is still enforced, because that editor saves through the WooCommerce REST API.
Yes. Regular price, sale price, SKU and stock status are checked on every enabled variation, and a variable product fails a check when any enabled variation fails it. Disabled variations are ignored. As in WooCommerce, a variation without a SKU of its own passes when the parent product has one.
Yes. Raise "Variations and grouped products" to Required in the settings. It then also requires a grouped product to link at least one published product. It ships as a warning, so imports that create the product before its variations are never blocked by it.
Not in this plugin. The SKU check covers the identifier WooCommerce itself uses.
Not in this version. Readiness is calculated when the list is shown and is not stored.
Yes. Register a rule on the sit_wcpg_register_rules action. It gets a settings row, a checklist row and enforcement automatically. The developer documentation is in README.md inside the plugin folder.
The readiness column adds three database queries for a page of simple products, and four for a page that includes variable or grouped products, whatever the page size or the number of variations.
sit_wcpg_register_rules, sit_wcpg_validation_result, sit_wcpg_should_enforce and sit_wcpg_can_override_publish_guard.