You might want to show a “POA” price and/or a “Call for Price” button when you have a product with an empty price.
Many businesses require this, mostly real estate and wholesalers. So let’s see how it’s done 🙂
Continue reading WooCommerce: POA / Call for Price @ Single Product
In my opinion, the WooCommerce Cart table is somewhat confusing. Why isn’t the “sale price” displayed there? Well, this is a mystery!
I’m pretty confident that showing the “slashed” price would actually help your conversion rate.
So, what about 10 PHP lines in exchange for an increase in sales? Great! Here’s the snippet 🙂
Continue reading WooCommerce: Display Regular & Sale Price @ Cart Table
Sometimes you may want to add a prefix or a suffix to your prices. It could be something like “From…”, “Only…”, “…tax free” and so on.
The first good news is this is very easy to do with a WooCommerce filter (remember, filters change the value of an existing variable, while actions add content). The second good news is that you don’t need to know PHP, just copy/paste my snippet or install a mini-plugin. Enjoy!
Continue reading WooCommerce: Add Prefix / Suffix to Product Prices
Interesting WooCommerce customization here. A client of mine asked me to hide/remove prices from the shop page and category pages as she wanted to drive more customers to the single product pages (i.e. increasing the click-through rate).
As usual, a simple PHP snippet does the trick. I never recommend to use CSS to “hide” prices, as they would still be visible in the code – PHP stops the prices from loading, so they’re invisible to the user.
Continue reading WooCommerce: Hide Prices on the Shop & Category Pages
You may want to force users to login in order to see prices and add products to cart. That means you must hide add to cart buttons and prices on the Shop and Single Product pages when a user is logged out.
All you need is pasting the following code in your functions.php (please note: your theme may have overwritten some default WooCommerce functions, hence the code below may not work. Contact me if you need custom code). Enjoy!
Continue reading WooCommerce: Hide Price & Add to Cart for Logged Out Users
You may want to disable the WooCommerce variable product price range which usually looks like $100-$999 when variations have different prices (min $100 and max $999 in this case).
With this snippet you will be able to hide the highest price, and add a “From: ” prefix in front of the minimum price – variable products with a single price (i.e. all variations have the same price) will keep their original format.
Simply paste the following code in your child theme’s functions.php and enjoy!
Continue reading WooCommerce: Disable Variable Product Price Range $$$-$$$
Entering prices exclusive of tax while displaying the shop price inclusive of price brings on this notification “Inconsistent tax settings”. Is this really a problem if a shop mostly sells in their own country? Okay, there could be some very small rounding problems, i guess. But i guess it’s mostly safe to enter prices exclusive tax to avoid tax changes. How do you handle this?
You’d think WooCommerce had an easy way to get the order tax rate percentage, the same way as you can get almost everything inside the “order object” with a single line of PHP. Well, that’s not the case unfortunately.
The reason is that probably each order can have multiple tax rates, and that tax is not only applied to product prices, but also optionally to shipping, fees and more.
So, how do we get the list of tax rates in a WooCommerce order? Here’s a quick snippet that you can use – enjoy!
Continue reading WooCommerce: Get Order Tax Percentage
If you run WooCommerce store promotions, this little snippet will help you with that. For example, how to run a “Buy 2 products, get one half off” or a “Buy 3 products, get the cheapest one for free” campaign?
The trick behind this workaround is to find the cheapest item by looping through the cart, and then to set its price so that it’s lower than the regular price. Enjoy!
Continue reading WooCommerce: Apply Discount to Cheapest Cart Item
Navigating the landscape of WooCommerce can be made significantly easier with a dropshipping agent, especially when sourcing products from China.
A dropshipping agent operates as the vital linkage in your business chain. Essentially, they manage transactions between you and your supplier. Their duties range from handling product sourcing to managing stock and ensuring quality control.
For instance, if we consider the product purchasing process, your agent would tackle this task on your behalf. They work directly with suppliers, negotiating prices and paving the way for smooth business operations.
Continue reading WooCommerce: Why Hire an Agent for Dropshipping From China
We could call this the “WooCommerce Anti-Spam Without a Plugin” series, while I attempt to fight against bad humans and very bad bots who love attacking the Business Bloomer checkout page with spam orders and fake user registrations.
My first attempts were (1) My Account registration anti-spam honeypot, (2) Checkout anti-carding-attack honeypot, and (3) Reducing the number of admin emails, but I can tell that (2) didn’t work, and I got another carding attack on a $9 product last weekend. Bots are smart.
Today, I’d like to share another anti-spam snippet that I’m currently testing on Business Bloomer. Most carding attacks, in fact, end up with the purchase of a single product in the $1-$9 range – which means that limiting the daily sales for specific, inexpensive, products may do the trick.
My code counts the times each product has been purchased during the day – and if a carding attack occurs, the product won’t be purchasable any longer until the end of the day. Because we’re talking about cheap products, it’s no problem for me to disallow legit sales as well for 24 hours. Use at your own risk, of course.
We already covered how to “Limit Sales Of A Product Per Day“, but this time I’d like to apply that to an array of products – and specifically all those that are under $10. Enjoy!
Continue reading WooCommerce: Limit Daily Sales For Cheap Products (Anti-Spam)
Especially when you need to let other people (such as developers) log in to your WooCommerce website, you may want to protect the identity of your customers and your order details.
Of course, anonymizing your WooCommerce backend requires a complete database override – this change is 100% irreversible! Only run this code if you know what you’re doing.
The ideal workflow is the following: you give developers access to a staging/clone website version, you run this custom code to anonymize customers and orders, and have them do the changes. This is good for GDPR, CRPA and PIPEDA as well: third party people won’t see sensitive data.
One more note: I haven’t tested the code with thousands of customers and orders – feel free to leave a comment in case your (staging) website crashes. Enjoy!
Continue reading WooCommerce: Anonymize All Users & Orders
In today’s digital age, ecommerce has witnessed significant growth, offering numerous opportunities for entrepreneurs and businesses to thrive.
One of this space’s most popular and profitable business models is print on demand (POD). Did you know that the POD market is projected to reach a staggering $67.59 billion by 2032?
With its low, upfront costs, ease of implementation, and limitless creative possibilities, POD has become a lucrative venture for many online store owners.
In this ultimate guide, we will explore how to leverage the power of WooCommerce, a leading ecommerce platform, to set up and manage your print on demand store successfully.
Continue reading WooCommerce: The Ultimate Guide To Printing on Demand
By default, the WooCommerce Single Product page features a Related Product section. Here, you’ll find products that are related to the current product, based on product categories and product tags in common.
All good so far, but we need to make a few more notes: whenever WooCommerce “calculates” the list of Related Products, it searches for 15 of them (unless otherwise specified via custom code). Then, it shuffles them. And finally it gives you the first 5 of them (unless otherwise specified via custom code). At this stage, these are sorted by “rand” (unless otherwise specified via custom code).
This is because WooCommerce wants people to see different related products each time a single product page is loaded. It’s potentially good, but also it may get messy when, as a store owner, you may want to direct people to the same related products over and over again (i.e. always show the same set of related products).
And in order to do that, we need to do 2 changes: disable the shuffle, and disable the “rand” sorting. In this way, you should be able to show the same Related Products to all customers. Let’s see how this is done!
Continue reading WooCommerce: Disable Related Products Shuffle
It’s easy enough in WooCommerce to get/calculate product sales. What’s difficult, on the other hand, is calculating the total amount of sales for a specific category, because there is no core function that already does that.
Why sales by category – you may ask? Well, to me, that’s a very important metric. For example, I sell both consulting and non-consulting products on this same website, so it’s important for me to keep track of category sales year-on-year, especially when my goal is reducing 1-to-1 client work while increasing scalable product sales such as courses, plugins and memberships.
In this quick tutorial, we will first get the “WooCommerce orders that contain a target product category”, and after that we will loop through the array to calculate the total sales for that specific category. Sounds difficult? No worries – just copy and paste the snippets below.
Continue reading WooCommerce: Get Total Sales By Product Category
On Business Bloomer I sell a bundle of products, and I use no Bundles plugin for that. So the challenge was to programmatically add a list of products to the order upon purchase, once the bundle product is purchased.
This is an amazing way to save time for the customer, as they don’t need to manually add each product to the cart. In the background, after a successful purchase, some magic code (that you find below) adds products to the order, sets their price to $0.00 (so that the order total is not altered), and saves the order. Enjoy!
Continue reading WooCommerce: Add Product To Order After Purchase
Offering promotions is a great way to attract customers and increase sales in your online store. Some promotion strategies that have proven effective are the Buy One Get One Free (BOGO), Buy X Get Y, and WooCommerce dynamic pricing.
Taking this into account, you may want to offer reduced prices to your users in these various circumstances:
- Run a flash sale for a limited time.
- Encourage your customers to buy specific products in a clearance sale.
- Offer product bundles to big spenders.
- Add free shipping when someone makes a bulk purchase.
- Automatically add gift items as part of your store’s loyalty program.
Without dedicated plugins, these strategies might be utterly difficult to conduct. To save yourself from the coding hassle, you should pick a WooCommerce dynamic pricing plugin to quickly get it up and running.
In this blog post, we will discuss how to create a BOGO promotion, Buy X Get Y, and dynamic pricing rules in WooCommerce based on user conditions. And it requires no coding knowledge. Let’s dive in.
Continue reading WooCommerce Dynamic Pricing: BOGO, Buy X Get Y & Conditional Discounts
Bad news first – we’ve seen how to add content to any WooCommerce order email, however I did not specify that if you use the [products] shortcode that’s not going to work unfortunately. The reason behind this, in plain English, is that… it just doesn’t work, and it outputs a weird list of “Sale!” list items (see screenshot below)!
So, I want to fix this, and find a WooCommerce email-compatible way to show a grid of products based on a list of product IDs (for example, the list of related products based on the ordered items), and make sure I can actually see product images, titles, prices and a link. Enjoy!
Continue reading WooCommerce: Display Product Grid @ Order Emails e.g. Related Products
Already using Elementor to build your one-of-a-kind WooCommerce website?
Great, because you can now take your powered-by-Elementor WooCommerce store to the next level with a new third-party extension.
Think of product tables, grids, and carousels; of product page widgets such as toggles, improved star ratings, sale countdowns, and add to cart plus and minus buttons.
Also, category grid and carousel views. With plenty of layout and styling options, you can create a unique look and feel for your WooCommerce store.
Developed by Consortia, a company with a track record of creating popular plugins for WooCommerce like Bulk Table Editor, Cost & Reports and Bulk Category Editor, the new Consortia Addons plugins is the perfect fit for those who want to step up their Elementor game and take advantage of new features.
Continue reading WooCommerce: Get 10+ New Widgets With This Elementor Add-on
Alright, this title may not really help you understand what I mean, so let’s put it in another way. When, as an administrator, you edit an order and are in the Order Items table, you have the chance to edit the item quantity, subtotal and discounted price (see screenshot below).
Now, what if you also want to have the freedom to display and edit another custom field, so that it is saved inside the order once you hit the “Save” button?
This could be useful for custom setups – for example let’s imagine the admin has the necessity to also define the “shipped quantity”, so that they know exactly if a specific order has been entirely fulfilled or requires a second shipment to get completed.
Either way, see the screenshot below, play with the snippet, and see how it goes. Enjoy!
Continue reading WooCommerce: Item Custom Field @ Edit Order Page