Woocommerce: Producto Variable - obtener nombre de variación
Quiero obtener el nombre de la variación de un producto variable en Woocommerce. Por ejemplo, si tengo un producto que está disponible en diferentes tallas: pequeña, mediana y grande. Me gustaría imprimir por ejemplo "grande". Casi lo he conseguido hacer funcionar. El problema es que también obtengo el nombre del producto al mismo tiempo, como: "Nombre del producto - Grande" Aquí está mi código:
$product_variation = wc_get_product($variation['variation_id']);
$product_variation->get_name()
Espero que alguien pueda ayudar, gracias. :-)

Utiliza el método get_varation()
. Si el atributo es un atributo global, obtendrá correctamente el nombre del término de taxonomía para el atributo, y si no lo es, devolverá el valor almacenado con el producto.
$product_variation = wc_get_product( $variation['variation_id'] );
echo $product_variation->get_attribute( 'size' );

Creo que esto debería funcionar bien:
$string = WC_Product_Variation::get_formatted_name();
ref: https://woocommerce.wp-a2z.org/oik_api/wc_product_variationget_formatted_name/

utiliza esto aquí para obtener el nombre de la variación
$productId = 1; //ID del producto aquí
$handle = new WC_Product_Variable($productId);
$variationData = $handle->get_children();
foreach ($variationData as $value) {
$variation_id = $value;
$single_variation = new WC_Product_Variation($value);
$var_slug = $single_variation->slug;
echo "<br/>".$name = implode(" / ", $single_variation->get_variation_attributes());//aquí obtienes el nombre del producto
}

Por favor prueba el siguiente código. Mostrará el nombre de la variación del atributo tamaño por ID de variación.
$variation = wc_get_product($variation['variation_id']);
$variation_attributes = $variation->get_variation_attributes();
$variation_name = ucfirst($variation_attributes['attribute_pa_size']);
echo $variation_name;
Déjame saber si esto funciona para ti.

Esto solo funcionará si el atributo es global, y solo devolverá el slug. ucfirst()
es un truco para hacer que el slug parezca el nombre del atributo, pero no funcionará correctamente si el valor tiene más de una palabra, o si la etiqueta no es igual que el slug.
