Skip to content
  • Home
  • About Mitch
  • Speaking
  • Articles
  • Contact
  • Home
  • About Mitch
  • Speaking
  • Articles
  • Contact

Digital Strategist

WordPress Developer

Content Creator

Unapologetic Punk

Mitch Canter

  • Threads
  • Instagram
  • Bluesky
  • LinkedIn
  • GitHub
  • Twitch
  • YouTube
Tutorials

Add a Product List to WooCommerce’s Order Columns

CMDR Mitchcraft

Reading time: 2 minutes
turned on gray laptop computer

If you’re running WooCommerce, the Orders screen is a great way to see – at a glance – what’s going on in your store.  However, there’s one thing that it absolutely doesn’t show: the products that people have ordered.

The code below changes that – it gives you a special column in your Orders screen called “Products” and shows a quantity and product name for each product a person has ordered.  Just paste this code into a site-plugin or into your functions.php file:

add_filter( 'manage_edit-shop_order_columns', 'show_product_order',15 );
function show_product_order($columns){

   //add column
   $columns['product-display'] = __( 'Products');

   return $columns;
}

add_action( 'manage_shop_order_posts_custom_column' , 'snv_custom_shop_order_column', 10, 2 );
function snv_custom_shop_order_column( $column ) {
 global $post, $woocommerce, $the_order;

    switch ( $column ) {

        case 'product-display' :
            $terms = $the_order->get_items();

          if ( is_array( $terms ) ) {
                foreach($terms as $term)
        {
        echo $term['item_meta']['_qty'][0] .' x ' . $term['name'] .'
';
        }
              } else {
                _e( 'Unable get the products', 'woocommerce' );
        }
            break;

    }
}

Let’s break it down:

The filter (“show_product_order”) adds a column to the WooCommerce Orders Admin screen.  The column will show up at the end of the other column lists.

The action (“snv_custom_shop_order_column”) adds a function to the “manage_shop_order_posts_custom_column” (whew!) hook in WooCommerce.  It then checks each order listed in the column and looks for a column field called “product-display” – which we defined in the filter above.  It then echoes the quantity and the name for each product listed.

Feel free to modify this as you wish – you can also find a Gist of this on GitHub if you’d rather see it / bookmark it there!

Code, WooCommerce, WordPress
  • Post Ordering Made Easy

    Post Ordering Made Easy

    Reading time: 1 minute

    I love using WordPress’ built in custom post types.   I’ve used them for sliders, directories, galleries, and pretty much anything else I can think to use them for.  The one gripe I have, however, is that I can’t manually set the order of the posts.  Just like typical blog posts, I have to arrange…

    WordPress
  • WordPress 2.6 Review

    WordPress 2.6 Review

    Reading time: 3 minutes

    First of all, I updated WordPress to its new version as soon as I was able.  I’ve been very excited to see some of the new features they’ve added, and I have my list of the top ones to look foward to.  There aren’t any major interface changes this time, but (just like any great…

    WordPress