Obtener todos los atributos del producto y sus términos en WooCommerce

1 minuto de lectura

Avatar de usuario de Stanley Ngumo
stanley ngumo

He investigado esto todo el día, pero parece que no puedo obtener una respuesta directa. ¿Cómo puedo obtener los atributos del producto establecidos junto con los términos configurados para cada uno?

esto es lo que tengo ahora

//get the  terms
$attribute_taxonomies = wc_get_attribute_taxonomies();
$taxonomy_terms = array();

if ( $attribute_taxonomies ) {
    foreach ($attribute_taxonomies as $tax) {
        
        //dont know what to add here
    }
}

var_dump($taxonomy_terms);

A continuación, obtendrá una lista de todos los atributos del producto y sus respectivos nombres de términos:

echo '<ul>';
// Loop through WooCommerce registered product attributes
foreach( wc_get_attribute_taxonomies() as $values ) {
    // Get the array of term names for each product attribute
    $term_names = get_terms( array('taxonomy' => 'pa_' . $values->attribute_name, 'fields' => 'names' ) );
    echo '<li><strong>' . $values->attribute_label . '</strong>: ' . implode(', ', $term_names);
}
echo '</ul>';

Si prefiere obtener una matriz de los objetos WP_terms, utilizará:

// Get the array of the WP_Terms Object for the each product attribute
$terms = get_terms( array('taxonomy' => 'pa_' . $values->attribute_name );

Eso permitirá usar un bucle foreach para obtener lo que desea de cada término…

Primero verifique la función wc_get_attribute_taxonomies() con var_dump().

¿Ha sido útil esta solución?