Yes – I can’t find it either. Its been completely removed from the plugin code. Perhaps they only want to allow it in specific extensions.
It has been completely removed from v2.1 (https://github.com/woothemes/woocommerce/issues/5228). Although I can’t find any mention of it in the Change Log.
You can add in a filter it seems instead – which itself has been changed from woocommerce_require_shipping_address
to woocommerce_cart_needs_shipping
or woocommerce_product_needs_shipping
for individual products.
Edit your theme functions.php to have the following:
function mytheme_woocommerce_force_shipping() {
return true;
}
add_filter('woocommerce_cart_needs_shipping', 'mytheme_woocommerce_force_shipping');
That worked for me although the github issue #5227 implies that it didn’t for him.
Hi,
Thank GOD i found this thread. It’s the closest I got to a solution. I have the same problem, and tried your code, however it adds “Shipping(free).” to my options.
I have table rate shipping so the extra option of “Shipping(free)” defeats the purpose. For example: i would have both “Shipping(free)” and also INTERNATIONAL SHIPPING $45 at checkout.
How do I disable “Shipping(free).” I have already marked as unchecked Free shipping under my Shipping options, however “Shipping(free)” still appears.
Hope you can help me with your invaluable expertise.
-Mark
@breachbine that seems to be a completely unconnected issue, which unfortunately I don’t know the answer to. I suggest you open a new topic with that question.
Hi guys,
I have added this code to the function.php
add_filter( 'woocommerce_cart_needs_shipping', '__return_true' );
So I can collect shipping addresses for virtual products. However, my virtual products are all now charging the table rate shipping charges and are not free shipping anymore.
Any ideas what I need to do to fix this? Basically I have a bunch of virtual products , that need shipping addresses but also need to be free shipping.
Hope someone can help! Thanks.