Describe (even complex) shipping costs with simple general rules on the order properties (amount, postcode, weight, #products and/or articles etc.).
Screenshots
The shipping method configuration page. Here you can set up multiple shipping methods (think carriers) using the Shipping by Rules plugin. Each method can have an arbitrary number of rulesets and rules. Each method can independently offer a shipping rate.
The shipping method edit page. Give the shipping method a title that will be shown in the cart and the invoice. You can add an arbitrary number of rulesets, each applying to different countries. Each ruleset can have an arbitrary number of rules of the form 'Name="Name to be displayed to the user"; Amount<14; Weight>5; Shipping=9.9'. Do not forget to press "Update" to save your changes. The rulesets can be reordered by simply dragging them.
An example of two shipping methods offered in the cart. Notice that the displayed shipping name has the form "Shipping Method name (Optional Rule name)".
If a matching rule has NoShipping set as shipping costs, its name will be displayed as a warning message to the user and the method will not offer any shipping.
The plugin's entry in WordPress' plugin management page contains direct links to the configuration page, to the documentation and to the support forum.
FAQ
Installation Instructions
- To install the plugin, either:
- use WordPress’ plugin manager to find it in the WordPress plugin directory and directly install it from the WP plugin manager, or
- use WordPress’ plugin manager to upload the plugin’s zip file.
- After installation, activate the plugin through the ‘Plugins’ menu in WordPress
- Go to WooCommerce’s shipment configuration page, open the “Shipping by Rules” method and set up a your rule-based methods there
Where can I get further rule examples or help?
Please see our support forum at http://open-tools.net/forum/. It might also be a good idea to check the support forum of the Shipping by Rules plugin for VirtueMart. The basic concepts of these plugins are identical, so most solutions for VirtueMart will also work in the WooCommerce shipping plugin.
ChangeLog
2.0.6
- Add function evaluate_for_shippingclasses
2.0.5
- Basic support for Dokan Marketplace (vendors lists are properly filled)
2.0.4
- Compatibility with WC vendors in combination with product variations
- Fix PHP warnings
2.0.3
- Fix warning when products have no length/width/height assigned (use 0 as default)
- Fix tiny incompatibility with PHP 7
2.0.2
- Support for WooCommerce Product Vendors >=2.0
- Support UK postcodes if second part is left out by the user altogether
2.0.1
- No changes (installation package was missing files, so a version increase was required)
2.0
- Transition to WooCommerce’s Shipping Zones. Existing methods (not using zones) are preserved and legacy mode is enabled.
- Update for full compatibility with WooCommerce 3.0
- Fix non-latin category SLUGs
1.2.8
- Fix issues with UK_* variables when no address is entered yet
1.2.7
- Add debug messages to the update system (disabled by default)
1.2.6
- Add message functionality (Error=…, Warning=…, Message=… rule parts)
1.2.5
- Add variables username, first_name, last_name, email
- Add list variable userroles (advanced version only)
- Fix issue with debug_variables
1.2.4
- Fix incompatibility with Cash on Delivery (returned id should be prefixed with the method ID)
- Fix opentools_shipping_by_rules_get_cart_values filter using indefined argument
1.2.3
- Fix update credentials input
- Fix PHP error when both versions of the plugin are enabled
- Fix fatal error: Call to a member function isNoShipping() on a non-object…
1.2.2
- Fix warning about function signature mismatch
- Fix Coupons variable not being available (advanced version)
1.2.1
- Fix for warning when a rule contained only spaces
1.2
- Add support for “WC Vendors” and for “WooThemes Product Vendors” (new variable “Vendors”, new function “evaluate_for_vendors”)
1.1.1
- Fix for PHP 5.3
- Fix for evaluate_for_XXX functions (advanced version)
1.1
- Add time variables, Quantity/MaxQuantity/MinQuantity
1.0