Products are located mainly in the following tables:

  • wp_posts table with post_type like product (or product_variation),
  • wp_postmeta table with post_id as relational index (the product ID).
  • wp_wc_product_meta_lookup table with product_id as relational index (the post ID) | Allow fast queries on specific product data (since WooCommerce 3.7)
  • wp_wc_order_product_lookuptable with product_id as relational index (the post ID) | Allow fast queries to retrieve products on orders (since WooCommerce 3.7)

Product types, categories, subcategories, tags, attributes and all other custom taxonomies are located in the following tables:

  • wp_terms
  • wp_termmeta
  • wp_term_taxonomy
  • wp_term_relationships – column object_id as relational index (the product ID)
  • wp_woocommerce_termmeta
  • wp_woocommerce_attribute_taxonomies (for product attributes only)
  • wp_wc_category_lookup (for product categories hierarchy only since WooCommerce 3.7)

Product types are handled by custom taxonomy product_type with the following default terms:

  • simple
  • grouped
  • variable
  • external

Some other product types for Subscriptions and Bookings plugins:

  • subscription
  • variable-subscription
  • booking

Since Woocommerce 3+ a new custom taxonomy named product_visibility handle:

  • The product visibility with the terms exclude-from-search and exclude-from-catalog
  • The feature products with the term featured
  • The stock status with the term outofstock
  • The rating system with terms from rated-1 to rated-5

Particular feature: Each product attribute is a custom taxonomy…


Leave a Reply

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