WooCommerce inbuilt shipping settings are quite simple – too simple, sometimes.
WooCommerce merchant often require a complex shipping setup, depending on the industry or the (very expensive) courier fees.
But shipping is much more: conditional logic, marketing, user experience.
Setting shipping costs with a handy “table rate” plugin, combining them with cart-based marketing actions and guiding your customers through the buying process can help you sell more and reduce your return rate.
Explaining to your customers why they can’t buy a certain product, or encouraging them to add another one to the cart to get a discount, or blocking certain shipping rates so that your courier doesn’t overcharge you… there are so many needs for a more advanced shipping setup.
In this article, we’ll tale a look at the importance of shipping costs, why conditional logic is a game changer and why customers love to get free shipping. Enjoy!
Continue reading WooCommerce: How To Set Up Complex Shipping Rules
As an advanced WooCommerce developer, at some stage you’re really going to need this PHP function, the same way you often browse through Business Bloomer’s WooCommerce visual hook guides or the product / order / cart getters.
This time we go study how to “get” the shipping zones and rates, because it’s likely that you will need to loop through them when you need to display shipping rates somewhere, or for other custom functionalities. Enjoy!
Continue reading WooCommerce: Get All Shipping Zones & Rates
The dropshipping industry is expected to rise by almost $557 billion by 2025. So, if there’s a time to kickstart your dropshipping journey, it’s today.
Apart from being one of the most profitable business models today, dropshipping also has a low entry barrier. You can easily create a dropshipping store with WooCommerce in a few clicks.
However, managing and running an online dropshipping business is much more than just building a store. Luckily, you can use many plugins and extensions with your WooCommerce store to make your processes and operations more efficient.
If you want to take your dropshipping store to the next level and butter-smooth everything from inventory management and listing to product and supplier selection with plugins – this article is for you. Enjoy!
Continue reading WooCommerce: Top 7 Dropshipping Plugins (2021)
In today’s “Watch me customize my WooCommerce marketplace website” episode (see previous customization re: external products) we’ll go printing shipping zones and rates on the single product page, so that users know how much they’ll end up spending once they reach the Cart/Checkout and there are no “hidden” fees. Not bad for some transparency = better sales conversion rate!
You can see the result on my own website, at this link for example: https://www.apieceofsicily.com/en/shop/sicilian-crafts/ciabattino/ – as you can see right below the “Add to Cart” button there is a shipping table with the data taken from the shipping zones.
I must say I use YITH WooCommerce Multi Vendor / Marketplace so that data is actually taken from each vendor’s shipping setup – so in this tutorial we will first see how to get the default “WooCommerce Shipping Zones Data” and in a second snippet we will instead see how to get the info for each vendor instead.
Either way, enjoy!
Continue reading WooCommerce: Show Shipping Rates @ Single Product Page
Are you interested in dropshipping but don’t know what you need to get started? Join me as I explain how to start dropshipping in WordPress with the right tools and no monthly payments.
If you’ve considered using WooCommerce as your dropshipping platform there are many ways you can implement it – one on the solutions is the SaleSource plugin.
Continue reading WooCommerce: How To Set Up Dropshipping
A good way to inform online customers and avoid issues is showing the estimated delivery / dispatch time on the single product page, just below the “Add to Cart” button. Yes, you could do that manually by adding shipping info to each product short description, but the goal of Business Bloomer is to learn how to code that instead, so you won’t need to write things manually.
Also, this is great because if you change something in your dispatch rules, you just need to change the short PHP snippet and not all your product descriptions. It’s much more flexible this way.
Finally, in this post we’ll learn how to work with cut-off times (hour of the day) and current day of the week (pure PHP), so that we can show a “dynamic” notice based on current date. So, let’s see how it’s done!
Continue reading WooCommerce: Show Dispatch / Est. Shipping Date @ Single Product
I’m surprised WooCommerce doesn’t offer this field out of the box. Most ecommerce websites actually require a shipping phone to organize delivery and communicate with the end customer in case there are problems.
Thankfully, there is a hook (filter) for that. It’s called “woocommerce_checkout_fields” and can be used to remove, move or add checkout fields quickly. And here’s how to add, for example, a new shipping field called “shipping_phone”. Enjoy!
Continue reading WooCommerce: Add Shipping Phone @ Checkout
The “Shipping Calculator” can be enabled via the WooCommerce settings in order to give the user a way to calculate their shipping fees before getting to the Checkout Page. Usually they fill out the country, state, city and postcode form fields and click on “Update Totals” in order to calculate the shipping.
However, what if you only calculate shipping based on country? Or what if you only charge by zip code / postcode? In this case, you will need to hide the input fields you don’t need, and make UX better.
Well, here are some WooCommerce filters you can use from WooCommerce version 3.4 onwards to hide the fields you like (apart from country, which is mandatory).
Continue reading WooCommerce: How to Hide “Shipping Calculator” Fields @ Cart
Believe it or not, the answer to this very frequent question is inside the WooCommerce settings… so don’t worry too much about coding if you’re not a developer!
From the WooCommerce shipping rates, you can select “Free Shipping” as a method but that would apply to ALL products – so how do you override the shipping settings and allow a single product to have free shipping? Continue reading WooCommerce: How to Assign Free Shipping to a Single Product?
In the past, WooCommerce cart and checkout pages used to show “$0.00” beside each free shipping rate. But given that many freelance clients requested this customization, today we’re bringing this back to life with just a few lines of PHP 🙂 Continue reading WooCommerce: Display $0.00 Amount For Free Shipping Rates
Let’s talk about checkout UX: if a user is willing to pick up the item in store, why should there be a shipping form on the checkout?
Well, let’s see how we can hide this dynamically with a bit of PHP and JS!
Continue reading WooCommerce: Hide Shipping If Local Pickup Is Selected
With WooCommerce Shipping Zones you can use simple PHP to accomplish lots of “advanced” shipping rules, such as shipping by weight.
With many of Business Bloomer fans always asking for this sort of customization, today we’ll see how to do just that. Without the need of just another plugin 🙂
Continue reading WooCommerce: Shipping by Weight (Without a Plugin!)
The new shipping zone management that was introduced with Woo 2.6 gives us the chance to add flat rate, free shipping and local pick-up methods by default.
But what if a client requires 3 different rates depending on the order amount (tiered shipping)? For example: “For orders up to $100, shipping = $5; for orders up to $250, shipping = $2; for orders above $500, shipping = free”.
Is this possible without using a plugin? Well, the answer, as usual, is absolutely yes! Enjoy!
Continue reading WooCommerce: Shipping Rates by Order Amount
Today’s snippet has been widely requested by many readers, clients and WooCommerce fans. We already saw in the past how to Limit State Dropdowns to One State Only (for both Shipping & Billing) and How to Sell to one State only (Billing).
However, we never covered a much more common setting: what happens when Billing is allowed to every state but Shipping is limited?
In order to get a little help, I’ve reached out to Diego Zanella, a WooCommerce genius who is also the author of the Aelia Currency Switcher plugin for WooCommerce.
Continue reading WooCommerce: Limit Shipping to Only One State
Our goal is to check if a Product with a specific Shipping Class is in the Cart, and consequently disabling a shipping rate such as Free Shipping if this is true.
This is super useful when there are multiple items in the cart and you don’t want to give free shipping for certain orders for example.
Continue reading WooCommerce: Hide Shipping By Shipping Class
Today we take a look at the WooCommerce Checkout page and specifically at how to add a Custom Extra Fee for Non-Continental US States. You can do the exact same thing for a non-US State, as long as customers will feel comfortable in paying extra! Continue reading WooCommerce: Add Shipping Fee for Non-Continental States
Today we take a look at the WooCommerce Checkout page and our goal is to disallow placing an order to customers that enter a PO BOX address. I don’t remember where I got this snippet from, but either way I’m glad to share it again!
Continue reading WooCommerce: Disallow Shipping to PO BOX Address
Today we take a look at the WooCommerce Checkout Page and specifically at how to disable a payment gateway (for example PayPal) when a specific shipping method is selected (e.g. “local_pickup”).
Specifically, you will learn how to “get” the selected shipping method on the go (thanks to “sessions”), and also how to “unset” a payment gateway. Enjoy!
Continue reading WooCommerce: Disable Payment Gateway For Specific Shipping Method
A client needed to disable all shipping methods but Local Pickup for a certain variation ID. This may come useful if you’re looping through the variations on the cart/checkout page (check if variation ID is in the cart for example), so here you go! Continue reading WooCommerce: Disable Shipping Rate if Variation ID @ Cart
A client had several shipping rates on the cart page automatically generated by FedEx, USPS, UPS and similar plugins via their API. Problem was, they wanted to sort them by price as opposed to grouping them by provider.
Thankfully, with a simple “uasort” PHP function, it’s possible to take the shipping rates array and sort it by amount before returning it back to the screen. If you don’t know PHP, simply copy/paste!
Continue reading WooCommerce: Sort Shipping Costs from Low to High