WooCommerce hooks, actions and filters
WooCommerce heavily relies on the usage of Hooks, Actions, and Filters. It gives you the possibility to override the default output of WooCommerce.
Developers added Hooks
For instance, if you want to take control of the Checkout page and add or even remove fields in there, hooks and filters are what you need.
Let’s first explain this concept. Within the WordPress and WooCommerce code, developers added hooks. On a hook, you can hang your own code so that it changes the original behavior. There are two types of hooks, which are actions and filters:
- An action allows you to add functionality to WooCommerce at a specific point in the process
- A filter allows you to intercept and change the data as it is being processed
In other words, using actions you can do something and use a filter you can change the data.
Now, let’s take the following example. In some countries, having the State field on the checkout page doesn’t make sense because States are not actively used. In such a case, you might want to remove the field from the checkout page. Here’s how to do just that.
Add the following code to your functions.php file in your Child theme:
Custom Function
So what does this do? First of all, we add our own custom function to the WooCommerce Checkout fields filter. In our custom function, we simply remove two fields by using the unset function. However, please note that this is an example only.
Removing the State field might break extensions that rely on it. Besides that, the preceding code does not check if the fields are set before removing them. So, be careful when applying changes like these and always make sure to keep backup copies of the original files available.