blog webempresa

¿Cómo crear productos por programación en WooCommerce?

por | Oct 21, 2023 | Tutoriales WordPress Avanzados

¿Cómo enviar emails a usuarios registrados en WordPress?

En la era digital, la eficiencia y la automatización son esenciales para mantener una tienda en línea competitiva. WooCommerce, siendo una de las plataformas de comercio electrónico más populares, ofrece una amplia gama de herramientas para facilitar la gestión de productos.

Sin embargo, ¿qué sucede cuando necesitamos añadir una gran cantidad de productos o realizar actualizaciones masivas? Aquí es donde entra en juego la creación de productos por programación en WooCommerce. Esta técnica no solo te ahorra tiempo, sino que también minimizamos los errores humanos, garantizando una gestión de productos más fluida y precisa.

En esta guía, exploraremos cómo puedes aprovechar la programación para mejorar y agilizar el proceso de gestión de productos en WooCommerce. ¡Prepárate para llevar tu tienda al siguiente nivel!

¿Que son los productos en WooCommerce?

 

WooCommerce ha revolucionado el mundo del comercio electrónico, permitiendo a cualquier persona con un sitio WordPress vender en línea. Pero, ¿qué sería de una tienda sin sus productos? En el corazón de WooCommerce, encontramos los productos, que son en esencia los artículos o servicios que los propietarios de tiendas ofrecen a sus clientes.

Estos pueden ser desde productos físicos como ropa o electrónica hasta productos digitales como libros electrónicos o cursos en línea. Cada producto en WooCommerce tiene detalles particulares, como el título, descripción, precio, imagen, y más.

Además, WooCommerce permite una gran flexibilidad en la configuración de estos productos, ofreciendo opciones como productos variables en WooCommerce (por ejemplo, una camiseta que viene en diferentes tallas y colores) o productos agrupados (un conjunto de artículos relacionados).

Vista de un producto en WooCommerce

Pero más allá de la simple definición, los productos en WooCommerce son el puente entre el negocio y el cliente. Son la representación digital de lo que ofrecemos, y por ello, gestionarlos de forma adecuada es esencial para el éxito de nuestra tienda en línea.

A medida que avanzamos en esta guía, descubriremos cómo la programación puede ser una herramienta poderosa en esta gestión, optimizando procesos y mejorando la experiencia tanto para el vendedor como para el comprador.

¿Por qué crear productos por programación en WooCommerce?

 

En lo que respecta a WooCommerce, la flexibilidad y adaptabilidad son dos de sus pilares fundamentales. Si bien la plataforma ofrece una interfaz amigable para agregar y gestionar productos, hay situaciones en las que hacerlo de forma manual puede resultar tedioso o ineficiente. Aquí es donde entra en juego la creación de productos por programación.

Eficiencia en la gestión masiva: imaginemos tener que añadir cientos o incluso miles de productos a nuestra tienda. Hacerlo uno por uno sería una tarea titánica. La programación permite automatizar este proceso, ahorrando tiempo y esfuerzo.

Personalización avanzada: a través de la programación, podemos definir características específicas o aplicar condiciones especiales a nuestros productos, algo que a veces no es posible con las opciones estándar de WooCommerce.

Integraciones externas: si nuestro negocio depende de proveedores o sistemas externos, la programación puede ser la llave para sincronizar de forma automática los productos entre diferentes plataformas.

Actualizaciones dinámicas: los precios, el stock o las descripciones pueden cambiar con frecuencia. Con la programación, podemos establecer reglas o gatillos que actualicen estos datos en tiempo real o en momentos específicos.

Optimización del flujo de trabajo: al automatizar la creación y gestión de productos, podemos centrarte en otras áreas cruciales de tu negocio, como el marketing o la atención al cliente.

Crear productos por programación en WooCommerce no es solo una cuestión de comodidad, sino una estrategia inteligente para optimizar recursos, mejorar la gestión y ofrecer una experiencia de compra superior a los clientes. Al dominar esta habilidad, abrimos un mundo de posibilidades para nuestra tienda en línea WordPress.

¿Cómo crear productos por programación en WooCommerce?

 

Crear productos de manera programada en WooCommerce nos abre las puertas a un mundo de eficiencia y personalización. Mediante la programación, podemos generar productos en nuestra tienda con una precisión y velocidad que de forma manual sería imposible.

Utilizando código, accedemos a una vía de creación de productos que nos permite, no solo agilizar el proceso, sino también integrar datos de manera más precisa y automática. Este enfoque nos brinda un control total sobre cada aspecto del producto, preparándonos para enfrentar el dinamismo del comercio digital con herramientas robustas y flexibles.

A continuación, vamos a ver un paso a paso a través de los pasos esenciales para lograrlo:

Preparativos iniciales

 

Antes de sumergirnos en el código y todo lo que podemos hacer con este, debemos asegurarnos de tener una copia de seguridad de WordPress de nuestro sitio web. Ya sea mediante cualquier plugin de respaldos de WordPress o mediante nuestro sistema de superbackup.

Si optamos por SuperBackup de Webempresa, podemos descargar una copia de seguridad de nuestro sitio de forma manual. Además, si tenemos algún plugin que facilite esta tarea, también podemos usarlo. El objetivo es asegurarnos de tener una forma de restaurar nuestro sitio web en caso de cualquier problema.

superbackup en wepanel

Acceder a las funciones del tema

 

Después de configurar nuestro primer respaldo, necesitamos localizar nuestro archivo functions.php. Aunque hay herramientas que pueden ayudar en este proceso, lo mejor es hacerlo de forma manual para asegurarnos de que funcione de forma correcta y se ejecute como necesitamos.

Para ello ingresamos a nuestro cpanel o wepanel y nos ubicamos en:

Administrador de archivos > Public_html > Dominio > wp-content > themes > tema utilizado > archivo functions.php

Una vez encontramos este archivo ya podemos proceder con el siguiente paso que involucrara un pequeño Hook para poder hacer el llamado al código que agregaremos luego.

Ubicacion functions

Hook principal

 

Luego de que encontramos nuestro archivo functions.php procedemos con agregar el hook principal, para agilizar podemos copiar y pegar el siguiente código al final de nuestro archivo:

add_action('wp_head', function () {
if (is_page('pagina-ejemplo')) {
crear_producto_simple();
}
});

Con este vamos a generar una acción en una página, en este caso la que contenga la URL pagina-ejemplo, esta URL podemos cambiarla a algo más específico como carga-de-producto-simple, o cualquier otro nombre que queramos para que no sea accesible al público en general.

Este hará un llamamiento a la función de crear_producto_simple();, si queremos agregar productos variables podemos cambiar el simple del final por variable.

Crear productos simples con códigos

 

Ahora, solo tenemos que añadir la función específica para crear el producto. La veremos a continuación y podemos agregarla después del código que insertamos en el paso anterior. De esta manera, al visitar la página de ejemplo, WordPress ejecutará esta función para crear el producto.

function crear_producto_simple(){
try {
	$product = new WC_Product_Simple();

	// General info
	$product->set_name( 'Producto de ejemplo' );
	$product->set_sku( '12345' );
	$product->set_description( 'Descripción del producto' );
	$product->set_short_description( 'Descripción corta del producto' );

	// Visibility info
	$product->set_status( 'publish' );  // can be publish, pending, draft, etc
	$product->set_catalog_visibility( 'visible' ); // add the product visibility status

	// Stock info
	$product->set_manage_stock( true );
	$product->set_stock_quantity( 1000 );
	$product->set_stock_status();

	// Price info
	$product->set_price( 100 );
	$product->set_regular_price( 100 );
	$product->set_sale_price( 90 );

	// Taxonomy info
	$product->set_category_ids( [ 280 ] ); // array of category ids, 15 is cat id
	$product->set_tag_ids( [ 302, 304 ] ); // array of tag ids

	// Image info
	$product->set_image_id( 57 ); // image id from media library

	// Dimension info
	$product->set_height( 10 );
	$product->set_length( 10 );
	$product->set_width( 10 );
	$product->set_weight( 1.2 );

	// Attributes info
	$brand = new WC_Product_Attribute();
	$brand->set_name( 'Marca' );
	$brand->set_options( [ 'Lacoste', 'Tommy Hilfiger' ] );
	$brand->set_position( 1 );
	$brand->set_variation( false );
	$brand->set_visible( true );

	$product->set_attributes( [ $brand ] );

	// Save product
	$product->save();

} catch ( WC_Data_Exception $e ) {
	error_log( print_r( $e->getMessage(), true ) );
}
}

Prueba del código

 

Una vez lo agregamos si entramos a la página que asignamos en nuestro archivo functions.php no veremos nada en concreto, incluso podríamos llegar a pensar que no ha funcionado lo que hemos hecho, pero si vamos a nuestra página de productos podemos ver como este se ha creado según los datos que le hemos proporcionado.

Teniendo en cuenta que estos los podemos modificar a conveniencia.

Crear productos variables con códigos

 

El proceso de creación de un producto variable sería muy similar al anterior, con algunos cambios en el código, sin embargo, en este caso en lugar de terminar el código al momento de guardar el producto este va a seguir estableciendo las variaciones del mismo.

Hacemos llamados de la misma forma que lo hemos hecho con el paso anterior agregamos una función para que el proceso de agregarlo sea más sencillo y esta la agregamos al final de nuestro archivo functions.php.

function crear_producto_variable(){
try {
	$product = new WC_Product_Variable();

	// General info
	$product->set_name( 'Producto de ejemplo variable' );
	$product->set_sku( '123456' );
	$product->set_description( 'Descripción del producto variable' );
	$product->set_short_description( 'Descripción corta del producto variable' );

	// Visibility info
	$product->set_status( 'publish' );  // can be publish, pending, draft, etc
	$product->set_catalog_visibility( 'visible' ); // add the product visibility status

	// Taxonomy info
	$product->set_category_ids( [ 281 ] ); // array of category ids, 15 is cat id
	$product->set_tag_ids( [ 302 ] ); // array of tag ids

	// Image info
	$product->set_image_id( 55 ); // image id from media library

	// Attributes info
	$color = new WC_Product_Attribute();
	$color->set_name( 'Color' );
	$color->set_options( [ 'Azul', 'Blanco', 'Rojo' ] );
	$color->set_position( 2 );
	$color->set_variation( true );
	$color->set_visible( true );

	$logo = new WC_Product_Attribute();
	$logo->set_name( 'Logo' );
	$logo->set_options( [ 'Si', 'No' ] );
	$logo->set_position( 1 );
	$logo->set_variation( true );
	$logo->set_visible( true );

	$product->set_attributes( [ $color , $logo] );

	// Save product
	$product->save();

	// Variations
	$variation = new WC_Product_Variation();
	$variation->set_parent_id( $product->get_id() );
	$variation->set_attributes( [ 'color' => 'Azul', 'logo' => 'Si' ] );
	$variation->set_regular_price( 111 );
	$variation->save();

	$variation = new WC_Product_Variation();
	$variation->set_parent_id( $product->get_id() );
	$variation->set_attributes( [ 'color' => 'Azul', 'logo' => 'No' ] );
	$variation->set_regular_price( 110 );
	$variation->save();

	$variation = new WC_Product_Variation();
	$variation->set_parent_id( $product->get_id() );
	$variation->set_attributes( [ 'color' => 'Blanco' ] );
	$variation->set_regular_price( 100 );
	$variation->save();

	$variation = new WC_Product_Variation();
	$variation->set_parent_id( $product->get_id() );
	$variation->set_attributes( [ 'color' => 'Rojo' ] );
	$variation->set_regular_price( 115 );
	$variation->save();

} catch ( WC_Data_Exception $e ) {
	error_log( print_r( $e->getMessage(), true ) );
}
}

Prueba del código

 

Igual que hicimos con el código anterior, al visitar una página que hemos definido como activadora, se ejecutará el código que crea este nuevo producto. Es importante destacar que cada código puede ser personalizado para ajustar los detalles que necesitemos, como cambiar los tipos de variaciones o agregar más.

Cada código es libre de ser editado y modificado según nuestras dependencias para la creación del producto, una vez hecho esto tendremos el producto listo en la página de WooCommerce > productos.

Conclusiones

 

La gestión de una tienda en línea implica constantes desafíos y adaptaciones. En el mundo de WooCommerce, la capacidad de crear productos por programación no es solo una habilidad técnica, sino una puerta hacia una gestión más eficiente y personalizada de nuestra tienda.

Aunque al principio puede parecer una tarea compleja, con la guía adecuada y un poco de práctica, se convierte en una herramienta invaluable. Al dominar esta técnica, no solo ahorremos tiempo, sino que también abrimos posibilidades de integración y automatización que antes parecían inalcanzables.

Utilizando código, accedemos a una vía de creación de productos que nos permite, no solo agilizar el proceso, sino también integrar datos de manera más precisa y automática. Desde establecer características específicas hasta asignar categorías, la programación se convierte en un aliado invaluable

En resumen, invertir tiempo en aprender a crear productos por programación en WooCommerce es, sin duda, invertir en el futuro y éxito de tu negocio en línea. ¡Adelante y explora todo lo que esta habilidad tiene para ofrecer!

¿Te ha resultado útil este artículo?

Promo abril