woocommerce - 查询具有相同标签的产品

I found a few articles with examples on how to achieve this, but they don't output any data for me. Here's an example:

function woo_products_by_tags_shortcode( $atts, $content = null ) {

    // Get attribuets
    extract(shortcode_atts(array(
        "tags" => ''
    ), $atts));

    ob_start();

    // Define Query Arguments
    $args = array( 
                'post_type'      => 'product', 
                'posts_per_page' => 5, 
                'product_tag'    => $tags 
                );

    // Create the new query
    $loop = new WP_Query( $args );

    // Get products number
    $product_count = $loop->post_count;

    // If results
    if( $product_count > 0 ) :

        echo '<ul class="products">';

            // Start the loop
            while ( $loop->have_posts() ) : $loop->the_post(); global $product;

                global $post;

                echo "<p>" . $thePostID = $post->post_title. " </p>";

                if (has_post_thumbnail( $loop->post->ID )) 
                    echo  get_the_post_thumbnail($loop->post->ID, 'shop_catalog'); 
                else 
                    echo '<img src="'.$woocommerce->plugin_url().'/assets/images/placeholder.png" alt="" width="'.$woocommerce->get_image_size('shop_catalog_image_width').'px" height="'.$woocommerce->get_image_size('shop_catalog_image_height').'px" />';

            endwhile;

        echo '</ul><!--/.products-->';

    else :

        _e('No product matching your criteria.');

    endif; // endif $product_count > 0

    echo ob_get_clean();

}

This code is a shortcode, and I don't want to have to write one out and input the tag name manually. I want to use this function to hook into woocommerce_after_single_product_summary. Basically I'm trying to achieve this.

The first post is the current post. After that it's up to 3 more posts that will be visible. The query needs to look at the current product's tag, find more in it, and output ordered by the product category.