Ubercart Restrict Shipping by Material


Download & Extend
Add Issues for uc_restrict_shipping_by_material to dashboard
Download & Extend HomeDrupal Core
ThemesTranslationsInstallation Profiles
ViewGit instructionsEditMaintainers
Posted by craigmc on June 16, 2011 at 2:27pm
This is an extension to the Ubercart suite of modules that allows item materials to be restricted from shipping to certain states/provinces and/or countries. It adds an interstitial check at the check out process and if any of the product(s) in a given order cannot be shipped to the shipping address, it will not allow the sale to go through, displays an error message to the user and returns them to their cart to adjust the contents therein.

E.g. I have a product that contains Widgets and Staples. California has a strict limitation on Widget imports, and South Dakota simply cannot allow the import of Staples. France allows neither Widgets, nor Staples. This module allows products that are made of these materials to be restricted from shipping to these states, and products containing either (or both) from shipping to France.

Enable/configure Ubercart as needed for your site
Configure the countrie(s) that can receive items: /admin/store/settings/countries
Add a CCK field to the Product content type to store the material(s) values for products. This can be multi-value, and can store text, or numbers
Under admin settings on /admin/store/settings/restrictshippingmaterial, select the CCK field in the product content type that stores Material information. Submit form.
For each material type that needs restrictions, select it in the pulldown list, click Add Restriction, and configure the restriction from the ensuing page. Restrictions can be modified, added, removed entirely at any time. Note, if you change the CCK source field, all existing restrictions are deleted
Note: This is not a competing project to http://drupal.org/project/uc_restrict_shipping and based on careful review of that codebase, there is no good way to integrate the two directly, and since that module is not being actively maintained, I am releasing this as a separate module.

Developed initially for http://www.handbago.com and contributed back to Drupal.org. Thanks to Brian Meert and Kristina Moreno for helping with this process.