• By Nacho
  • 2 de marzo de 2023

Cómo añadir un producto al carrito con código PHP en WooCommerce

Cómo añadir un producto al carrito con código PHP en WooCommerce

Cómo añadir un producto al carrito con código PHP en WooCommerce 1024 655 Nacho

Dificultad Alta

A la hora de realizar un desarrollo a medida en WordPress, podemos tener la necesidad de añadir productos al carrito automáticamente a través de los ficheros PHP. Si estás desarrollando una tienda online con WooCommerce, es posible que necesites utilizar esta función en diferentes momentos, como por ejemplo:

  1. Si tu sitio web tiene un formulario personalizado para hacer pedidos. Es posible que necesites utilizar la función add_to_cart para agregar los productos seleccionados al carrito.
  2. Si estás implementando un modelo de suscripción en tu sitio web. Puedes necesites utilizar la función add_to_cart para agregar automáticamente los productos a la suscripción del usuario.
  3. Si tu sitio web permite realizar compras a través de una API externa. Cuando esto pasa, es posible que necesites utilizar la función add_to_cart para agregar los productos seleccionados al carrito del usuario.
  4. Te contamos nuestro caso al final 😉

Cómo añadir un producto simple al carrito de WooCommerce mediante código PHP

Para añadir un producto al carrito en WooCommerce utilizando PHP, puedes utilizar la función WC()->cart->add_to_cart() – Esta función es nativa de WooCommerce y añade un producto al carrito. Esta función toma dos argumentos obligatorios: el ID del producto y la cantidad, y dos argumentos opcionales: variaciones (si el producto tiene) y atributos. La función básica quedaría de la siguiente manera:

$product_id = 123; // ID del producto a añadir al carrito
$quantity = 1; // Cantidad del producto a añadir al carrito

// Añadir el producto al carrito
WC()->cart->add_to_cart($product_id, $quantity);

Cómo añadir un producto con variaciones al carrito de WooCommerce mediante código PHP

En el siguiente ejemplo, definimos el ID del producto que queremos añadir al carrito. ID: 123 en este caso y la cantidad de dicho producto que se añadirá al carrito será 1. Con los parámetros ubicados en variables, podemos emplear la función add_to_cart() para añadir el producto al carrito. Como indicamos anteriormente, también puedes pasar un tercer argumento para las variaciones y un cuarto argumento para los atributos. A continuación te mostramos un ejemplo de cómo añadir un producto con variaciones y atributos:

$product_id = 3018; // ID del producto a añadir al carrito
$quantity = 1; // Cantidad del producto a añadir al carrito
$variation_id = 60001 // ID de la variación del producto

$cart_item_data = array(
'product_id' => $product_id,
'variation_id' => $variation_id
);
WC()->cart->add_to_cart($product_id, $quantity, $variation_id, array(), $cart_item_data);

En el ejemplo anterior, se define el ID del producto a añadir al carrito como 3018, la cantidad como 1, con la variación seleccionada también por ID (60001). Una vez todas las variables estén rellenadas con contenido que sabemos que es acorde, se utiliza la función add_to_cart() para añadir el producto al carrito con las variaciones y atributos especificados. Al utilizar variables no obligatorias de la función add_to_cart() debemos utilizar el orden establecido por la misma. Es por ello, por lo que empleamos «array()» en la 4ª variable de la función.

Este código también sería funcional a la hora de emplearlo en el fichero functions.php si fuera necesario utilizarlo en este espacio.

¿Para qué empleamos nosotros esta función?

Como ya hemos indicado, las necesidades pueden ser muy diferentes y este código es funcional en cualquier fichero .php de nuestro WordPress con Woocommerce, ya que utiliza las funciones nativas del plugin de tienda online. En nuestro caso, tuvimos la necesidad de utilizar esta función para el desarrollo a medida de una calculadora que debía estar integrada con WordPress.

Esta «calculadora», se basaba en un asistente mediante la cual el usuario utilizaba un asistente de compra para crear un producto a su medida. Mediante este asistente, el usuario rellenaba las medidas de una superficie y la forma de la misma. Una vez estos datos son rellenados, se pueden añadir productos extras y complementos a la selección. Cuando el usuario completa todos los pasos, aparece un resumen en el que figuran todas sus elecciones, junto al precio final y un botón de «Realizar Pedido». Al pinchar en este botón del resumen, todos los productos relacionados son añadidos al carrito de manera automática, junto a las cantidades y las variaciones de producto oportunas.

Mediante un planteamiento de este estilo, se pueden realizar asistentes de compra para productos a medida. Como desarrolladores de WordPress a medida, entendemos la necesidad de crear un código fuente que utilice las funciones y variables nativas que ofrece el propio sistema. De esta manera, conseguiremos crear un desarrollo estable, robusto y lo más importante, preparado para las actualizaciones tanto del plugin como de la versión de WP en el futuro

Dejar una Respuesta