Get the Product tags for the current product only in WooCommerce
You can use the function wp_get_post_terms() function for WooCommerce 'product_tag' custom taxonomy and a defined product id this way:
$output = array();// get an array of the WP_Term objects for a defined product ID$terms = wp_get_post_terms( get_the_id(), 'product_tag' );// Loop through each product tag for the current productif( count($terms) > 0 ){ foreach($terms as $term){ $term_id = $term->term_id; // Product tag Id $term_name = $term->name; // Product tag Name $term_slug = $term->slug; // Product tag slug $term_link = get_term_link( $term, 'product_tag' ); // Product tag link // Set the product tag names in an array $output[] = '<a href="'.$term_link.'">'.$term_name.'</a>'; } // Set the array in a coma separated string of product tags for example $output = implode( ', ', $output ); // Display the coma separated string of the product tags echo $output;}
Tested and works.
You can replace get_the_id()
by a dynamic product Id variable too.
You can now use the wc_get_product_tag_list()
function to get a list of the product's tags. It supports providing a separator along with before and after elements.
Example
<?php global $product;?> <div class="product-tags"> <?php echo wc_get_product_tag_list( $product->get_id(), ', ' ); ?> </div>