If you want to add custom taxonomies to your product variations, you can use the “woocommerce_single_variations_taxonomies” filter. An example how to add the product brand taxonomy can be found here:

/**
 * Add product_brand to taxonomies list for variations.
 *
 * @param array $taxonomies
 *
 * @return array
*/
add_filter( 'woocommerce_single_variations_taxonomies', 'add_custom_taxonomies', 10, 1 );
function add_custom_taxonomies( $taxonomies ) {
   $taxonomies[] = 'product_brand';
   return $taxonomies;
}

After you have placed this function in your child theme functions.php file. Make sure you click on “init” in plugin admin settings again.

9 thoughts on “Add custom Taxonomies to Single Variations

  1. Haavard H. says:

    Will this make the variations inherit the parent taxonomy values, or is it possible to set unique values per variation? For example a color attribute per single variation, without using this attribute to create the variation.

  2. Daniel
    Daniel acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
    says:

    The parent attributes will be inherited, except the variation attributes of course..

    • Daniel
      Daniel acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
      says:

      You may ask the plugin developer what their taxonomy name is.

      • File says:

        Ok, thanks you. When I have the name of the taxonomy, how should I put it in the code?I must replace ‘product_brand’? 2 times in the code.

  3. File says:

    /**
    * Add product_brand to taxonomies list for variations.
    *
    * @param array $taxonomies
    *
    * @return array
    */
    add_filter( ‘woocommerce_single_variations_taxonomies’, ‘add_custom_taxonomies’, 10, 1 );
    function add_custom_taxonomies( $taxonomies ) {
    $taxonomies[] = ‘pwb-brand’;
    return $taxonomies;
    }

    this works for me with perfect brands for woocommerce.

  4. Stefan says:

    I added a custom taxonomy using JetEngine, and it seems that this solution doesn’t work with JetEngine.
    Besides, is there an option/possibility to display attributes that are not used for variations? Should they also be copied to the variation? And is there maybe a possibility of displaying all the metadata assigned to a variation (for debugging)?

Leave a Reply

Your email address will not be published. Required fields are marked *