I wish to submit a feature request. I'd like to be able to use conditions/rules logic to configure shipping methods in the same way you offer them to configure promotions (and based on a similiarly vast list of conditions). This will offer the admins optimal flexibility in configuring shipping methods.
A couple of use cases :
For the food industry : I'd like to apply a specific shipping method if the cart contains a product with an attribute/tag "Frozen" in order to impose a more expensive shipping cost.
For the deco industry : I'd like to apply a specific shipping method if a product belongs to a category "Sofas" in order to impose ground delivery service.
I think it's terrific that you offer this flexibility for promotions and would encourage you to do the same for shipping methods with as many aspects as possible (tags, categories, products, custom attributes).
We have requested this in the past. Certain items we sell can only be shipped ground and others must go air. So, we second your request.
We've been building this custom for clients for years. It's not easy to add this globally for all possible conditions .. hence why it isn't available in any cart system anywhere that we're aware of.
You can add this via custom logic and hooks ... this is what we do for products that have to run dual rates for "normal" shipping and freight.
E.g. We have a client that sells 5lb bags of stones and 20,000 lb fountains in CS-Cart. It runs both quotes and presents only one shipping total to the customer while pulling multiple APIs.
Susan, if you need this modification, we can offer you our custom development service. Feel free to contact us
You can do this without mods by using suppliers and assigning products requiring different shipping methods to different "suppliers". You can then set the valid shipping methods for each "supplier". So for your food industry example:
Setup two suppliers: regular and frozen
Setup two shipping methods: regular and frozen
Setup supplier regular to only allow ship method regular
Setup supplier frozen to only allow ship method frozen
If you allow expedited shipping methods and want to allow customers to choose them separately for each type of product then you'll need to set the suppliers addon setting to show shipping methods for each supplier separately.
I use this method to separate shipping for oversize items that are ground only, regular items with free ground shipping and accessories/parts that customer pays shipping.
I can't claim to have invented it, cs-cart has posted it as a way to assign separate shipping methods for products in the past. It has a couple of things that make it not as flexible as the OP request. Managing it requires setting the supplier on products rather than using a rule for something like a category. Also, if you have some products that are assigned to a ground-ship only supplier for say haz-mat reasons and other products that are assigned to a supplier that can ship ground or expedited then when a customer orders from both suppliers they will get charged twice for ground shipping even if supplier addresses are the same. Same issue if if you segregate out truck freight items when non-truck items can ship with the truck freight item. Also, if you are drop shipping it results in two emails to your supplier.