Estoy tratando de agregar un producto de variación a mi carrito directamente a través de un enlace. Estoy configurando la variación_id con la cadena de consulta. Hasta donde puedo decir, estoy enviando los datos exactamente de la misma manera que lo hace el formulario de variación por defecto.
Aquí está el código dentro de mi página de producto único:
<a href="<?php echo esc_url( $product->add_to_cart_url() ); ?>&variation_id=262" class="rounded-rect-button add-to-cart">Add to Cart</a>
Por el contrario, el producto simple funciona bien. He establecido precios para las variaciones de mi producto en el administrador. No estoy seguro de por qué no es tan simple como enviar los datos. Cualquier ayuda sería muy apreciada.
fuente
Me di cuenta de esto. Me faltaban un par de parámetros necesarios para agregar un producto variable a mi carrito. Los parámetros que faltan son el
variation_id
y el tipo de atributo al quevariation_id
se refiere. La identificación de la variación se puede encontrar en admin> woocomerce> productos y en la pestaña de variaciones junto a la variación del producto que ha creado.El parámetro param se forma a partir del prefijo
attribute_
y luego el nombre del atributo desinfectado. Por ejemplo, mi atributo se llama Stock Colors, por lo que mi parámetro de tipo de atributo es attribute_stock-colors. Por lo que puedo decir, solo configurasteattribute_stock-colors=1
porque el método de agregar al carrito solo verifica si existe.Aquí hay un ejemplo simple de un enlace que agrega un producto a mi carrito con un ID de variación 261 de colores de stock:
Para usar esto en una situación real, necesitaría establecer el tipo de atributo y la identificación de variación dinámicamente a partir de las opciones que el usuario seleccionó en un menú desplegable o algo así (a menos que cada producto tenga la misma variación, lo que básicamente lo convertiría en un producto simple) )
fuente