Skip to Content
WooCommerceFiltros locales

Filtros Locales

Los filtros locales existen para atributos de variaciones que no están modelados como taxonomías globales de WooCommerce.

Archivo clave:

  • setup/modules/woocommerce-setup/module.php

Problema que resuelven:

  • en Woo clásico, filtrar por atributos locales de variaciones no viene resuelto como un filtro reusable de catálogo
  • Balinot detecta esas variaciones y fabrica filtros attr_local_* sobre la marcha

Detector principal:

function bs_wc_setup_get_local_variation_filters($args = []) { foreach ((array) $product->get_variation_attributes() as $attribute_name => $options) { if (taxonomy_exists($attribute_name)) { continue; } $filter_key = 'attr_local_' . $attribute_slug; } }

Qué devuelve cada filtro:

  • param
  • meta_key
  • label
  • selected
  • options con label, value y count

Segunda capa:

  • bs_wc_setup_shop_local_attribute_filter_enabled($filter_key) decide si cada filtro detectado está activo en settings
  • bs_wc_setup_get_local_variation_parent_ids_from_request() convierte la request en parent IDs válidos para la query

Interpretación:

  • attr_pa_color sería un filtro global
  • attr_local_talla podría ser un filtro local si la talla vive solo en variaciones del producto

Cuándo tocarlo:

  • si aparece un filtro local que no debería salir
  • si cambia el nombre visible o el conteo
  • si una combinación de filtros globales y locales devuelve productos inesperados
Last updated on