Admin Dashboard

WooCommerce Create Custom Order Statuses


There are no pre-requisites in order for you to be able to implement this solution.

How To Implement This Solution?

Simply copy the pre-coded solution to your active theme’s functions.php or preferably the Code Snippets Plugin.

About This Solution

Creating a custom order status in WooCommerce can be useful if there are extra steps in your business processes. Perhaps you would like to set a custom order status of “Dispatched”, “Exchanged” or “Being Picked”. With this code snippet, you are able to create any custom status you like to meet your business and customer needs.

* Snippet Name:     Create custom WooCommerce order statuses.
* Snippet Author:

add_filter( 'woocommerce_register_shop_order_post_statuses', 'ecommercehints_register_custom_order_status' );

function ecommercehints_register_custom_order_status( $order_statuses ){
   $order_statuses['wc-custom-status'] = array(
   'label'                     => _x( 'Custom Status', 'Order status', 'woocommerce' ),
   'public'                    => false,
   'exclude_from_search'       => false,
   'show_in_admin_all_list'    => true,
   'show_in_admin_status_list' => true,
   'label_count'               => _n_noop( 'Custom Status <span class="count">(%s)</span>', 'Custom Status <span class="count">(%s)</span>', 'woocommerce' ),
   return $order_statuses;

add_filter( 'wc_order_statuses', 'ecommercehints_show_custom_order_status' );

function ecommercehints_show_custom_order_status( $order_statuses ) {
   $order_statuses['wc-custom-status'] = _x( 'Custom Status', 'Order status', 'woocommerce' );
   return $order_statuses;

add_filter( 'bulk_actions-edit-shop_order', 'ecommercehints_get_custom_order_status_bulk' );

function ecommercehints_get_custom_order_status_bulk( $bulk_actions ) {
   $bulk_actions['mark_custom-status'] = 'Change status to custom status';
   return $bulk_actions;

100 WooCommerce Conversion Rate Optimisation Tips

This field is for validation purposes and should be left unchanged.

Let’s collaborate!

Need to outsource WordPress development?

Join forces with UnlimitedWP for an outsourced white label web development service you can truly rely on.

First Timer Here?

Sign up to receive 20% off on your first month with us.