Free shipping

Posts: 29
Joined: 08/09/2007
Bug FinderEarly adopter... addicted to alphas.

I think I brought this up BC (before crash), but we are stumped trying to supply some products with shipping and allowing others to receive quotes from UPS.
The problem is some products are too large for UPS and require a freight quote, but most are able to travel UPS. We've been able to manipulate the flat rate module to supply free shipping for order over a certain amount, but trying to manipulate the UPS module seems a little tedious. Any thoughts of how to maybe tackle this?

Let me know.

--

Drupal + Ubercart = Sundays Energy
_____________________

Analog Hero - Vintage Gadgets

Posts: 2352
Joined: 08/07/2007
AdministratoreLiTe!

Try making a copy of the flatrate module, and give it a hook_shipping_type(). have this hook define a "freight" shipping type that you will be able to give to those products. Also modify the hook_shipping_method() to define one shipping method that uses the "freight" type, rather than "order". In the Shipping Quote Settings, you can sort the shipping methods so that the freight method will override the UPS module when it is needed.

Making a copy of the module and renaming it is safer because you may accidentally overwrite your work when it comes time to upgrade Übercart.

Posts: 2
Joined: 10/16/2007

Hello,

I'm having the same issue. I need to:

(a) Allow free shipping per product
(b) Allow free shipping for orders over a certain amount
(c) Show UPS Quotes at all times, in case the customer needs to expedite their order.

I tried making a copy of the flatrate module, and modified hook_shipping_type() and hook_shipping_method(), as you suggested. I enabled everything, and I'm trying to test with a product that I set to use my new shipping type, and I'm not getting any quotes from it.

I've been struggling with this for a few days now, and don't know where else to turn, so if anyone can help me, I'd be very appreciative.

Thanks Smiling

Posts: 2
Joined: 10/16/2007

If someone could point me in the right direction on this, I would really appreciate it.

I'm kind of surprised that it's so hard to achieve this, but if someone can help me figure it out, I'd be more than willing to contribute the fix back to the community, if it doesn't already exist.