On one of my Ubercart 3/Drupal 7 stores I'm strictly using flat rate shipping, and the cost is set at the product level (all products are dropshipped from each manufacturer, so collecting one shipping charge for the entire order won't work for me since products in an order are often shipped from many different places).
What I'm trying to do now is use the "maximum package quantity" field in "Product information" to better determine the shipping charge when more than one of any given item is ordered. So, for example, if 4 of an item will fit in a box, an order with quantity of 5 of that item should get charged for shipping twice (one box of 4, one box of 1). Right now, that order of 5 would get charged for shipping 5 times.
I know that Flat Rate Shipping doesn't use this field out of the box. I'm trying to figure out the best approach to extend flat rate shipping to take the field into account.
From what I can gather, my options are:
- Tweak the uc_flatrate module to use the MPQ field (using something like uc_ups as a reference)
- Create a new module based on uc_flatrate
- Add a rule that tells uc_flatrate to check that field for each product in the order
I am something of a novice at working with module code and working with Rules, but if I can get some suggestions about which would be the best approach for this particular problem, I can probably make one of them work. Anyone have any suggestions as to what might be a good path to take first?