plugin-icon

Shipping Class By Category For Woocommerce

Oleh ah72king·
Assign WooCommerce shipping classes to products by category, saving time and avoiding bulk edit limitations.
Versi
1.3.0
Instalasi aktif
30
Terakhir diperbarui
Jun 26, 2026

Assign WooCommerce shipping classes to products by category, saving time and avoiding bulk edit limitations.

Requirements

  • WordPress 5.0 or higher
  • WooCommerce 5.0 or higher
  • PHP 7.4 or higher
  • MySQL 5.6 or higher, OR MariaDB 10.1 or higher

Automatic installation

Automatic installation is the easiest option — WordPress will handle the file transfer, and you won’t need to leave your web browser. To do an automatic installation of Shipping Class By Category For Woocommerce, log in to your WordPress dashboard, navigate to the Plugins menu, and click “Add New.”

In the search field type “Shipping Class By Category For Woocommerce” then click “Search Plugins.” Once you’ve found us, you can view details about it such as the point release, rating, and description. Most importantly, of course, you can install it by clicking “Install Now,” and WordPress will take it from there.

Manual installation

Manual installation method requires downloading the Shipping Class By Category For Woocommerce plugin and uploading it to your web server via your favorite FTP application. The WordPress codex contains instructions on how to do this here.

Detail Description

General

Shipping Class By Category For WooCommerce allows you to assign shipping classes to products based on their category in just a few clicks. Instead of manually editing each product or facing the limitations of bulk editing (which often fails with large product counts), this plugin lets you assign shipping classes efficiently, even for stores with thousands of products.

Key Features:

  • Subcategory Support: Optionally include subcategory products when bulk assigning to a parent category, with a confirmation prompt listing affected subcategories
  • Parent Class Inheritance: Optionally inherit shipping class from a parent category when a new product’s direct category has none assigned
  • Bulk Category Assignment: Assign shipping classes to all products within a selected category
  • AJAX Batch Processing: Handles large product catalogs without server timeouts
  • Automatic Assignment: New products automatically get shipping classes based on their category
  • Live Category Reassignment: When an existing product is moved to a different category, its shipping class updates automatically to match the new category
  • Custom Product Column: Optional shipping class column in the WooCommerce products table
  • Progress Tracking: Real-time progress bar during bulk operations
  • Error Handling: Robust error handling with retry mechanisms
  • Security: Proper nonce verification and capability checks

Security Features

  • Nonce Verification: All AJAX requests are protected with WordPress nonces
  • Capability Checks: Only users with manage_woocommerce capability can perform operations
  • Input Validation: All user inputs are properly sanitized and validated
  • SQL Injection Protection: Uses WordPress’s $wpdb->prepare() for all database queries

Performance Optimizations

  • Batch Processing: Processes products in configurable batches (default: 25 products)
  • Memory Management: Sets appropriate memory limits for large operations
  • Efficient Queries: Uses optimized database queries to minimize server load
  • Cache Management: Properly clears object cache after operations
  • Retry Logic: Implements exponential backoff for failed requests

Why Use This Plugin?

WooCommerce’s built-in bulk editing feature is limited to 999 products and may cause server crashes on low-memory setups. Shipping Class By Category For WooCommerce solves this issue by using batch processing through AJAX, ensuring smooth operation even for large stores. This plugin automates the assignment process, allowing you to apply shipping classes to entire categories, saving hours of manual work.

Settings

Plugin gives you an option to show the shipping class assigned to the product on the product table in the WordPress admin panel products listing page

Troubleshooting

Common Issues

  1. “WooCommerce is not active” error

    • Ensure WooCommerce is installed and activated
    • Check that WooCommerce version is 5.0 or higher
  2. “Security check failed” error

    • Try refreshing the page and attempting the operation again
    • Ensure you’re logged in as an administrator
  3. Slow processing

    • The plugin processes products in batches to prevent server timeouts
    • Large categories may take several minutes to process
    • Monitor the progress bar for real-time updates
  4. Memory errors

    • The plugin automatically sets memory limits, but you may need to increase PHP memory limit on your server
    • Contact your hosting provider if issues persist

Debug Mode

The plugin has its own debug flag so you can get detailed logs without flooding your general debug log with unrelated WordPress noise.

To enable plugin-level debug logging, add all three lines to your wp-config.php:

define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'SCBCFW_DEBUG', true );

All three must be present and set to true. Removing or omitting SCBCFW_DEBUG disables plugin logging even if WordPress debug mode is on.

Logs are written to /wp-content/debug.log and are prefixed with [SCBCFW] so they are easy to filter. Each entry includes the product ID, the category being checked, and the resolved shipping class slug, making it straightforward to trace why a product received a particular class (or none at all).

Example log output when a product’s category is changed:

[SCBCFW] Product #42: product_cat changed, resolving shipping class. [SCBCFW] Product #42: checking category "Category B" (term_id=5), scbcfw_shipping_class="8". [SCBCFW] Product #42: resolved to shipping class "freight". [SCBCFW] Product #42: applying shipping class "freight".

Remember to remove SCBCFW_DEBUG (or set it to false) on production sites once you are done diagnosing.

Support

For support, feature requests, or bug reports, please visit the plugin support page.

License

This plugin is licensed under the GPL v2 or later.

Note: This plugin is designed to work with WooCommerce’s standard shipping class system. For custom shipping solutions, additional configuration may be required.

Gratisdi paket berbayar
Diuji hingga
WordPress 7.0
Plugin ini tersedia untuk diunduh untuk diinstal di situs .