Respuestas de foro creadas

Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)
  • En ese caso, lo estás haciendo bien. Lo mejor es definir las marcas como un atributo. Productos/Atributos y ahí debes tener marca y todos los términos. Prueba lo siguiente y si no funciona, sigue buscando que seguro en Google encuentras el código, pero siempre teniendo en cuenta que es un atributo:

    function filter_products_by_pa_brand( $query ) {
        if ( ! is_admin() ) {
            return $query;
        }
     
        $screen = get_current_screen();
     
        if ( $screen->post_type == 'product' ) {
            $pa_brand = ( isset( $_GET['pa_brand'] ) ) ? $_GET['pa_brand'] : '';
     
            if ( ! empty( $pa_brand ) ) {
                $query->query_vars['tax_query'][] = array(
                    'taxonomy' => 'pa_brand',
                    'field' => 'slug',
                    'terms' => $pa_brand,
                );
            }
        }
    }
    add_filter( 'parse_query', 'filter_products_by_pa_brand' );
    

    Es importante que aclares cómo defines la marca, si es un atributo del producto o una taxanomía. Si es un atributo, la función no encuentra la marca.

    Iniciador del debate mjcreativos

    (@mjcreativos)

    Muchísimas gracias por tu respuesta. Voy a intentarlo!

Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)