Get Tags specific to Category using WooCommerce plugin

Could anyone help me to implement this code in WooCommerce, ie instead of categories to use product categories, and instead of tag to use product tag.

In functions.php :

Read More
function get_category_tags($args) {
global $wpdb;
$tags = $wpdb->get_results
("
    SELECT DISTINCT terms2.term_id as tag_id, terms2.name as tag_name, null as tag_link
    FROM
        wp_posts as p1
        LEFT JOIN wp_term_relationships as r1 ON p1.ID = r1.object_ID
        LEFT JOIN wp_term_taxonomy as t1 ON r1.term_taxonomy_id = t1.term_taxonomy_id
        LEFT JOIN wp_terms as terms1 ON t1.term_id = terms1.term_id,

        wp_posts as p2
        LEFT JOIN wp_term_relationships as r2 ON p2.ID = r2.object_ID
        LEFT JOIN wp_term_taxonomy as t2 ON r2.term_taxonomy_id = t2.term_taxonomy_id
        LEFT JOIN wp_terms as terms2 ON t2.term_id = terms2.term_id
    WHERE
        t1.taxonomy = 'category' AND p1.post_status = 'publish' AND terms1.term_id IN (".$args['categories'].") AND
        t2.taxonomy = 'post_tag' AND p2.post_status = 'publish'
        AND p1.ID = p2.ID
    ORDER by tag_name
");
$count = 0;
foreach ($tags as $tag) {
    $tags[$count]->tag_link = get_tag_link($tag->tag_id);
    $count++;
}
return $tags;
}

In wp theme:

$args = array('categories'=> '3'); 
$tags = get_category_tags($args); 
$content .= "<ul>"; 
foreach ($tags as $tag) { 
    $content .= "<li><a href="$tag->tag_link">$tag->tag_name</a></li>";
} 
$content .= "</ul>"; 
echo $content; 

Related posts

Leave a Reply

1 comment

  1. Finally solve the problem:

    t1.taxonomy = 'product_cat' AND p1.post_status = 'publish' AND terms1.term_id IN (".$args['categories'].") AND
    t2.taxonomy = 'product_tag' AND p2.post_status = 'publish'
    

    In the functions.php

    t1.taxonomy = 'category' AND p1.post_status = 'publish' AND terms1.term_id IN (".$args['categories'].") AND t2.taxonomy = 'post_tag' AND p2.post_status = 'publish'
    

    rename category to product_cat, and post_tag with product_tag.