WooCommerce: Display Product-Specific T&C @ Checkout

A freelance client sells two distinct products on the same website: a membership and an online course. Two different audiences, different formats and… different Terms & Conditions.

The goal was therefore to display the “Terms & Conditions” checkbox on the Checkout page based on the product in the cart. Once again, we’re going to use Conditional Logic. With that, the snippet is pretty easy to code! Continue reading WooCommerce: Display Product-Specific T&C @ Checkout

WooCommerce: Add “Confirm Email Address” Field @ Checkout

A correct email address is worth a thousand dollars, some ecommerce expert would say πŸ™‚ So, you don’t want your WooCommerce checkout visitors to mess up with that, do you?

What about adding an “Email Verification” field? In this way, we can make sure they double check their entry – and also show an error message in case they don’t match!

Let’s see how I implemented this for a freelancing client of mine – I’m sure you will be grateful! Continue reading WooCommerce: Add “Confirm Email Address” Field @ Checkout

WooCommerce: Add a Checkbox to Hide/Show Checkout Field

This snippet could come really handy for several reasons. When you’ll need to do advanced customization of the checkout and its fields, hopefully you’ll thank me then πŸ™‚

In today’s snippet, we will add a new checkbox and another new “hidden” field – then, if the checkbox is ticked, the field will show, otherwise it will disappear again. Continue reading WooCommerce: Add a Checkbox to Hide/Show Checkout Field

WooCommerce: Remove Tax if Checkout Field Value Exists

You can use to exempt someone from Tax/VAT if they enter a Tax/VAT number, or maybe if they specify a given ZIP code.

When I discovered the WooCommerce function set_is_vat_exempt(), together with a little trick to “get” a checkout field programmatically, the snippet was pretty simple to build and test. Here’s the lovely piece of code πŸ™‚ Continue reading WooCommerce: Remove Tax if Checkout Field Value Exists

WooCommerce: Display & Save WP User Field (e.g. user_url) @ Checkout

I’m curious to know how many had the same problem. At WooCommerce checkout, some user fields such as billing_name, shipping_address_1, etc. are automatically saved into the “WordPress User Profile” upon processing.

But what if we also wanted to display and save another existing user field, such as “user_twitter”, or “user_url”, which you can find in the WP User Profile by default? Well, this is very easy: first, we add a custom checkout field; then, we make sure that when the checkout is processed we save that field correctly! Continue reading WooCommerce: Display & Save WP User Field (e.g. user_url) @ Checkout

WooCommerce: Only Ship to Predefined “Local Pickup” Addresses

Woo 2.6 introduced Shipping Zones – and with that we can play with simple PHP (and JQuery) to accomplish lots of “advanced” shipping rules, such as local pickup.

This time, I’ve tested a snippet to add a dropdown to the billing section where users go choose the pickup destination. As a result, the shipping address is automatically populated, and so is the shipping method. What do you think? Continue reading WooCommerce: Only Ship to Predefined “Local Pickup” Addresses

WooCommerce: Enable Payment Gateway Only for “Order Pay Checkout”

A video tutorial will be done soon, but I’ve basically started invoicing my own clients with WooCommerce itself. I was using a third party system and I said to myself – why not using WooCommerce instead? So I did it, it’s actually pretty straight forward.

One of the most important functionalities I needed to customize was the “Bank Transfer” (bacs) payment option. Of course I don’t want this to be visible on the standard checkout page, however for those clients I invoice manually I definitely needed it.

We’ve seen in the past how to disable payment gateways given certain conditions… but how do we “enable” one? Continue reading WooCommerce: Enable Payment Gateway Only for “Order Pay Checkout”

WooCommerce: How to Remove “What is PayPal?” @ Checkout

One of my premium course students had an apparently simple requirement. Her client didn’t want to show the “What is PayPal?” text (and link) on the checkout page. In fact, why sending users away from the checkout? And who doesn’t know what PayPal is nowadays?Β Well, let’s see how this isΒ done via a simple “filter” – but this time I’d like to show you a step-by-step tutorial! Let me know what you think about this in the comments πŸ™‚ Continue reading WooCommerce: How to Remove “What is PayPal?” @ Checkout

WooCommerce: Add House Number Field @ Checkout

A Dutch fan told me in Holland they’re really strict about addresses πŸ™‚ In particular, all Dutch billing/shipping addresses require the “House Number”.

This must be therefore placed on the checkout, AFTER & BESIDE the Address_1 field and made required. Also, it’s a good idea to make this show in the Admin Order, the thank you page and the notification Emails. Continue reading WooCommerce: Add House Number Field @ Checkout

WooCommerce: How to Add a Custom Checkout Field (PHP)

A client of mine runs online courses for acupuncturists via Sensei LMS. US Law requires an “Acupuncture Registration Number” in order for students to get the final online certificate. So, this task was a little bit more complex than usual as it had two major issues:

1) This new checkout field does not belong to billing or shipping (order information), but instead it’s a unique user field that needs to be saved and retrieved multiple times if necessary

2) This field does need to be shown at checkout only if a certain product category is in the cart (“online courses”, as opposed to e.g. “books”)

So, here’s how you do it – hope it helps you understand that anything is possible via PHP! Continue reading WooCommerce: How to Add a Custom Checkout Field (PHP)