Obtener el nombre de la etiqueta del atributo del producto de WooCommerce

1 minuto de lectura

Avatar de usuario de sfsefsf33fs3fs3fs
sfsefsf33fs3fs3fs

Variable/variaciones en productos de woocommerce.

Puedo hacer esto para obtener el valor del atributo de pa_size: <?php echo $product_variation->get_attributes()['pa_size']; ?> que está en algún lugar /wp-admin/edit.php?post_type=product&page=product_attributes.

Pero como consigo el pa_size etiqueta (en este caso: ‘Tamaño’)? He intentado buscar todo en función de post_type, page y luego el “term_group”. Pero eso no funcionará. Puedo ver que esto generalmente es visible de forma predeterminada, pero esta es una solución personalizada. También en https://github.com/woocommerce/woocommerce/blob/3.8.0/templates/single-product/product-attributes.php No puedo ver dónde imprimen la etiqueta real, solo la “Etiqueta secundaria y valor del atributo”. Pero no padre real (pa_size => Tamaño).

He buscado en Google como un maníaco durante horas.

Para obtener el nombre de la etiqueta de un atributo de producto de WooCommerce, utilizará una de las siguientes 2 formas:

1) Usar WooCommerce wc_attribute_label() función dedicada:

$taxonomy   = 'pa_size';
$label_name = wc_attribute_label( $taxonomy );

2) Usando WordPress get_taxonomy() función:

$taxonomy   = 'pa_size';
$label_name = get_taxonomy( $taxonomy )->labels->singular_name;

En tu caso, ya conoces la propia taxonomía pa_size.

Todos los atributos del producto son solo taxonomías, con el pa_ prefijo de antemano.

Entonces podrás imprimirlos usando get_term_by()

debería verse algo como esto:

<?php
$term = get_term_by('slug', $product_variation->get_attributes()['pa_size'], 'pa_size');
echo $term->name;
?>

¿Ha sido útil esta solución?