Mostrar el valor de un atributo de producto individual en la página de Tienda (Woocommerce)
Estoy tratando de mostrar el valor de un solo atributo ('talla') en la página de tienda. Utilicé el siguiente código para mostrar todos los valores, intenté adaptarlo para mostrar un solo atributo, pero sin éxito...
¿Pueden ayudarme a adaptar el código para mostrar solo los valores del atributo 'talla'?
// Obtener los atributos
$attributes = $product->get_attributes();
// Iniciar el bucle
foreach ( $attributes as $attribute ) :
// Verificar y mostrar, adaptado de /templates/single-product/product-attributes.php
if ( $attribute['is_taxonomy'] ) {
$values = wc_get_product_terms( $product->id, $attribute['name'], array( 'fields' => 'names' ) );
echo apply_filters( 'woocommerce_attribute', wpautop( wptexturize( implode( ', ', $values ) ) ), $attribute, $values );
} else {
// Convertir pipes a comas y mostrar valores
$values = array_map( 'trim', explode( WC_DELIMITER, $attribute['value'] ) );
echo apply_filters( 'woocommerce_attribute', wpautop( wptexturize( implode( ', ', $values ) ) ), $attribute, $values );
}
endforeach;
¿Pueden indicarme cómo modificarlo?

Simplemente usa global $product
y luego utiliza el método get_attribute()
de ese objeto de producto, como se muestra a continuación:
$size = $product->get_attribute( 'pa_size' );
También puedes obtenerlo con el siguiente código:
global $product;
$size = array_shift( wc_get_product_terms( $product->id, 'pa_size', array( 'fields' => 'names' ) ) );
Recuerda que debes usar obligatoriamente global $product
.

¡No he entendido a qué te refieres con "separados por espacios"! Y si crees que esta respuesta te ayudó, por favor acéptala.

Sí ayudó, gracias. Simplemente tengo problemas para mostrar los valores correctamente en mi plantilla. ¿Puedes aconsejarme sobre cómo mostrarlos?

¿Puedes proporcionar algún enlace visible o imagen de cómo quieres mostrarlos? @user3767576

http://nadinka.webd.pl/modafirma/category/clothing/ - al pasar el cursor sobre la imagen del producto verás un cuadro de Tallas disponibles, quiero mostrar allí todos los valores de tallas asignados al producto. Intenté mostrarlos usando $echo, pero solo aparece el primer valor (hay más de uno para cada producto)

Entendido. Estoy un poco ocupado ahora. Dame un poco de tiempo. Volveré contigo. ¿Ok, amigo?

El código que funcionó para mí es $size = $product->get_attribute( 'pa_size' );
global $product;
$size = array_values( wc_get_product_terms( $product->id, 'pa_size', array( 'fields' => 'names' ) ) );
$prodsizes=implode(", ",$size);
echo $prodsizes;

Para mostrar un atributo específico llamado "Dimensiones del artículo":
add_action( 'woocommerce_single_product_summary', 'display_product_formated_dimensions_table', 25 );
function display_product_formated_dimensions_table(){ global $product;
$item_dimensions = $product->get_attribute( 'Item Dimensions' ); if ( $product->has_attributes() ) { echo '<table class="shop_attributes"><tr> <th>' . __( 'Dimensiones del artículo', 'woocommerce' ) . '</th> <td class="product_dimensions">' . esc_html( $item_dimensions ) . '</td> </tr></table>'; } }
