Receber por email
← Voltar para o catálogo

woo-custom-fields

Work with WooCommerce product attributes, custom meta fields, taxonomies, custom product tabs, and variation data. Use when adding custom data to products, orders, or customers.

34estrelas
Atualizado há 5 meses

Ver no GitHub ↗ Licença: MIT

Como adicionar

/plugin marketplace add OrcaQubits/agentic-commerce-skills-plugins

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/woo-custom-fields/svg)](https://www.skillteca.com.br/skills/woo-custom-fields)

Skills relacionadas

Ver todas de Dados e Análise →

Alerta por categoria

Receba novas skills de Dados e Análise toda segunda

1 email curto, só com as skills novas de Dados e Análise. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

WooCommerce Custom Fields & Attributes

Before writing code

Fetch live docs:

  1. Web-search site:developer.woocommerce.com product data custom fields for product custom fields guide
  2. Web-search site:developer.wordpress.org plugins metadata for WordPress metadata API
  3. Web-search woocommerce custom product attributes programmatically for attribute creation

Product Attributes

Global Attributes

Defined in WooCommerce > Attributes — shared across all products:

  • Stored as custom taxonomies: pa_{attribute_slug} (e.g., pa_color, pa_size)
  • Terms are the possible values (Red, Blue, Small, Large)
  • Can be used for filtering, variations, and layered navigation
  • Managed via wc_create_attribute(), wc_update_attribute(), wc_delete_attribute()

Custom (Local) Product Attributes

Per-product attributes — not global taxonomies:

  • Stored in product meta as part of _product_attributes array
  • Visible on the product page under "Additional Information" tab
  • Set via $product->set_attributes() with WC_Product_Attribute objects

Setting Attributes Programmatically

Create WC_Product_Attribute objects:

  • set_id() — 0 for custom attributes, taxonomy ID for global
  • set_name() — taxonomy name (pa_color) or custom label
  • set_options() — array of term IDs (global) or string values (custom)
  • set_visible() — show on product page
  • set_variation() — used for variations

Product Meta

Core Meta Keys

| Key | Description | |-----|-------------| | _price | Current active price | | _regular_price | Regular price | | _sale_price | Sale price | | _sku | Stock Keeping Unit | | _stock | Stock quantity | | _stock_status | instock / outofstock / onbackorder | | _weight, _length, _width, _height | Dimensions | | _virtual, _downloadable | Product type flags |

Custom Meta

  • $product->update_meta_data( '_my_custom_field', $value ) then $product->save()
  • $product->get_meta( '_my_custom_field' ) — retrieve value
  • Prefix custom keys with _ to hide from the Custom Fields meta box

Adding Product Edit Fields

Use hooks to add fields to the product edit screen:

  • woocommerce_product_options_general_product_data — General tab
  • woocommerce_product_options_inventory_product_data — Inventory tab
  • woocommerce_product_options_shipping_product_data — Shipping tab
  • woocommerce_product_options_advanced — Advanced tab
  • Save with: woocommerce_process_product_meta action

Field Rendering Functions

  • woocommerce_wp_text_input( $args ) — text input
  • woocommerce_wp_textarea_input( $args ) — textarea
  • woocommerce_wp_select( $args ) — dropdown select
  • woocommerce_wp_checkbox( $args ) — checkbox
  • woocommerce_wp_hidden_input( $args ) — hidden field

Custom Product Tabs

Adding to Product Page

Filter woocommerce_product_tabs to add, remove, or reorder tabs:

  • Return array with title, priority, callback keys
  • Remove default tabs by unsetting keys: description, additional_information, reviews

Adding to Product Edit (Admin)

Filter woocommerce_product_data_tabs to add tabs in the product editor:

  • Return array with label, target, class, priority
  • Render panel content via woocommerce_product_data_panels action

Order Meta

  • $order->update_meta_data( '_my_field', $value ) then $order->save()
  • $order->get_meta( '_my_field' ) — retrieve value
  • HPOS-compatible: always use CRUD methods, never update_post_meta()

Customer Meta

  • $customer->update_meta_data() / $customer->get_meta() via WC_Customer
  • Or update_user_meta() / get_user_meta() for WordPress user meta

Custom Taxonomies

Registering Custom Taxonomies

Use register_taxonomy() on init hook:

  • Associate with product post type for product classification
  • Set show_in_rest for REST API / block editor support
  • Hierarchical (like categories) or flat (like tags)

Best Practices

  • Use global attributes for values shared across products (color, size, brand)
  • Use custom meta for product-specific data not used in filtering
  • Prefix custom meta keys with underscore to hide from the generic meta box
  • Always use CRUD methods (update_meta_data / get_meta) for HPOS compatibility
  • Sanitize all input before saving: sanitize_text_field(), wc_clean(), absint()
  • Escape all output: esc_html(), esc_attr(), wp_kses_post()

Fetch the WooCommerce product data and metadata documentation for exact hook names, field function signatures, and attribute API before implementing.

Compartilhar X LinkedIn