ConicPlex

Start Your Project

Desk with a laptop glowing WooCommerce purple next to shipping boxes and packing tape, symbolizing hiding a WooCommerce shipping method

On this Page

Best Plugins to Hide a WooCommerce Shipping Method by Product Category

Husen Memon

September 4, 2026

Hiding a WooCommerce shipping method for specific product categories, rather than for the whole cart, is a narrower problem than most shipping plugins solve. Weight-based and table-rate shipping plugins handle rate calculation well, but “don’t offer local pickup if the cart contains a made-to-order furniture item” or “only show express shipping for accessories, never for oversized products” is a conditional-visibility rule, not a rate calculation. Four real plugins built around this space are compared below, along with what each one actually restricts by (several of these get lumped together as interchangeable when they’re not), plus the code-level alternative.

Why This Needs a Different Plugin Than Rate Calculation

WooCommerce’s core shipping settings let a store set up shipping zones and per-method costs. What core doesn’t offer natively is conditional visibility logic: showing or hiding a specific method based on what’s actually in the cart. That gap is what the plugins below fill, and it’s also achievable with a small code snippet if a store already has a developer maintaining custom functionality.

One thing worth knowing before picking a plugin: “product category” isn’t always the literal condition a plugin’s rule engine exposes. Several of these actually condition on shipping class, cart weight, or cart total instead, and a shipping class is usually assigned per product or per category in practice, so it ends up working as a category rule even when that’s not the field’s literal name. The distinction matters when a plugin’s marketing copy says “conditional shipping” without specifying what it’s actually conditioning on.

Four Plugins Compared

Plugin Actually conditions on Active installs Rating
Hide Shipping Method For WooCommerce Shipping class (the practical category proxy), or hide-all-when-free-shipping-qualifies 10,000+ 80% (25 reviews)
Conditional Shipping and Payments for WooCommerce Product category directly, plus cart total, weight, and user role 200 100% (2 reviews, small sample)
Conditional Shipping for WooCommerce Cart weight and shipping zones, not category directly 10,000+ 92% (22 reviews)
WC Hide Shipping Methods Whether Free Shipping is available, not category 20,000+ 84% (44 reviews)

Hide Shipping Method For WooCommerce: The Practical Category Route

Hide Shipping Method For WooCommerce is the most direct real fit for “hide by category” despite not using that exact word as its literal condition. Its actual rule engine hides a shipping method based on shipping class, and since most stores that need category-based shipping rules already assign a shipping class per product category (oversized furniture gets one class, small accessories get another), this ends up solving the category problem in practice. It separately supports hiding every other method when Free Shipping already qualifies, a related but different use case worth not confusing with the category rule.

Setting it up: requires WooCommerce 3.0 or higher. From the dashboard, go to Plugins > Add New, search “Hide Shipping Method For WooCommerce,” click Install Now, then Activate. Setup happens through the plugin’s own settings screen, where a rule is built by selecting one or more shipping classes (or choosing to also cover products with no class assigned) and picking which shipping method disappears when a cart contains a matching item. At 25 reviews and an 80% rating, it’s worth reading a few recent reviews for the WooCommerce version in use before relying on it for a live store, since a rating built on a small sample can shift quickly with one bad update.

Conditional Shipping and Payments for WooCommerce: The Literal Fit, With a Real Caveat

Conditional Shipping and Payments for WooCommerce is the only plugin in this comparison whose rule engine conditions on product category by name, not a shipping-class proxy. Its stated feature set covers hiding or enabling shipping methods based on cart total, weight, quantity, shipping class, or product category directly, plus restricting payment gateways by customer role, billing country, or order history, useful if a store also wants to disable cash on delivery for certain locations in the same plugin.

The real caveat, stated on its own WordPress.org listing rather than found through outside testing: its conditional-payment rule is flagged by the developer as not yet compatible with the latest WooCommerce version, with an update in progress. Combined with only 200 active installs and 2 reviews total, this is the precise-fit option with the least track record of the four. Worth testing thoroughly on staging with the store’s actual WooCommerce version before trusting it in production, not a plugin to install directly on a live checkout.

Setting it up: install and activate the plugin the normal way (Plugins > Add New, search, Install, Activate), then rules are configured from the plugin’s own settings screen, where a condition (product category, cart total, weight, quantity, or user role) is paired with an action (hide or restrict a specific shipping method or payment gateway).

Conditional Shipping for WooCommerce: A Broader Ruleset Engine

Rather than targeting category specifically, Conditional Shipping for WooCommerce‘s real strength is weight and zone-based rulesets: restricting a shipping method by maximum or minimum cart weight, for example requiring a “Freight” method instead of “Economy” once an order crosses 30kg. It works with existing shipping zones and methods rather than replacing them.

Setting it up: install like any WordPress plugin (download the zip, then Plugins > Add New > Upload Plugin in the dashboard, or search it directly if listed), activate, then build rulesets at WooCommerce > Settings > Shipping > Conditions. Each ruleset pairs conditions with actions that run when those conditions pass. A genuinely useful detail for troubleshooting: a debug mode at WooCommerce > Settings > Shipping > Conditions > Debug Mode shows a “Conditional Shipping Debug” panel at checkout listing exactly which conditions passed and which actions fired, useful when a rule doesn’t behave as expected and it’s unclear why. For live/dynamic carrier rates (USPS and similar), the plugin’s “Match by name” option is needed to target those methods correctly.

If the actual need is category-based rather than weight-based, this plugin can still work by pairing a shipping class per category with its zone/method conditions, but it’s not the most direct route there, Hide Shipping Method For WooCommerce or Conditional Shipping and Payments above are closer fits for that specific case.

WC Hide Shipping Methods: A Different Problem That Gets Confused With This One

WC Hide Shipping Methods is worth including specifically to correct a common mix-up: despite the name sounding like a general-purpose hide-by-condition tool, this plugin’s actual, singular job is hiding all other shipping methods once Free Shipping becomes available for a cart, with an option to keep Local Pickup visible alongside it. It doesn’t condition on product category at all. With the most installs of the four (20,000+) and 44 reviews at an 84% rating, it’s clearly solving a real, common problem, just not this one.

Setting it up (for its actual use case): install and activate normally, then go to WooCommerce > Settings > Shipping > Shipping options, where the choice is between showing Free Shipping alone, Free Shipping plus Local Pickup, or those plus any additional selected methods.

If a store’s real goal is “clean up checkout once Free Shipping qualifies,” this is the right plugin. If the goal is genuinely category-based hiding, one of the three above fits better.

The Code Alternative

WooCommerce exposes a `woocommerce_package_rates` filter that lets a theme’s `functions.php` or a small site-specific plugin remove a shipping method from the array of available rates based on any condition, cart contents and product category included. For a store that already has a developer handling custom functionality and wants to avoid adding another settings screen for one specific rule, a short snippet on this filter does the same job as the plugins above with zero additional plugin overhead, and it conditions on the literal product category, not a shipping-class proxy.

The tradeoff is maintenance. A plugin’s rule builder survives a WooCommerce update without anyone touching it; a custom snippet needs a developer to catch a filter signature change if WooCommerce ever alters it. Deciding between the two isn’t really about coding ability, it’s about who maintains the site long-term. A store with an in-house developer or an ongoing WooCommerce Development relationship often prefers the snippet, since it’s one less plugin to keep updated and license, and it sidesteps the small-install-base risk that comes with the most category-literal plugin option above. A store without that ongoing relationship is usually better off with a maintained plugin, since nobody has to remember the custom code exists six months from now when WooCommerce ships a breaking change.

How to Pick

  1. Need category-based hiding and want the most track record? Use shipping classes as the category proxy with Hide Shipping Method For WooCommerce, the most established of the category-adjacent options.
  2. Need the rule to condition on the literal product category field, and can test thoroughly on staging first? Conditional Shipping and Payments for WooCommerce is the direct fit, with the caveat that it’s a small, currently-updating plugin.
  3. Need weight or zone-based rules more than category, with a debug tool for troubleshooting? Conditional Shipping for WooCommerce.
  4. Actual goal is “hide everything once Free Shipping qualifies,” not category at all? WC Hide Shipping Methods, the most installed and purpose-built for that specific case.
  5. Have a developer maintaining the site and want to avoid one more plugin? The `woocommerce_package_rates` filter conditions on the literal category in a few lines, at the cost of needing someone to maintain it.

Frequently Asked Questions

Can I hide a WooCommerce shipping method without any plugin?

Yes, using the `woocommerce_package_rates` filter in a custom function, checking cart contents against the category or product condition and unsetting the method’s key from the rates array before it reaches checkout. This needs a developer to implement and maintain, since it lives in code rather than a settings screen.

What’s the difference between hiding a shipping method and disabling it?

Disabling a shipping method in WooCommerce’s core settings removes it everywhere, for every order. Hiding it conditionally, whether from a plugin or custom code, keeps the method available for orders that don’t match the condition, and only removes it from checkout when the condition is met, such as a specific product category being in the cart.

Is “shipping class” the same thing as “product category” for these plugins?

No, they’re separate WooCommerce fields, but in practice most stores assign shipping classes along category lines (all furniture gets one class, all small accessories another), so a plugin that conditions on shipping class ends up functioning as a category rule for most real setups. Only a plugin that explicitly lists “product category” as a condition, like Conditional Shipping and Payments for WooCommerce above, targets the category field directly.

Sources

Husen Memon is a co-founder of ConicPlex, a web development agency specializing in WordPress, Webflow, and custom software builds. Over more than 9 years and 200+ client projects, he has worked across everything from plugin development to full platform migrations, with a focus on building sites and tools that hold up under real day-to-day use, not just in a demo. He writes here about the technical decisions and tradeoffs that come up in that work.

Leave a Reply

Your email address will not be published. Required fields are marked *

Keep reading

Plugins

A split living room showing a worn, dated half next to a bright, renovated half, illustrating a before and after transformation

Best Before and After Image Slider Plugins for the WordPress Block Editor

Five before and after image slider plugins for the WordPress block editor compared, with real install counts, ratings, and setup…

Sajil Memon

September 4, 2026

Plugins

Desk with a laptop glowing warm orange, an hourglass, and an analog clock, symbolizing a WordPress sale-page countdown timer

How to Add a Countdown Timer to a WordPress Sale Page (5 Plugins Compared)

A countdown timer on a WordPress sale page works because it turns “buy eventually” into “buy now.” If the offer…

Sajil Memon

September 4, 2026

Guides

Home office monitor displaying an abstract blue and violet grid-patterned Webflow layout mockup next to a graphics tablet and stylus

How to Turn an Approved Design into a Pixel-Accurate Webflow Build

A pixel-accurate Webflow build means the live site matches the approved design file closely enough that a client comparing the…

Moin Memon

September 4, 2026

WhatsApp
Husen Memon
Husen Memon
Typically replies instant