Comprobar si un producto está en el carrito de WooCommerce

Hoy traigo otro pequeño snippet para que sepamos cómo comprobar si un producto en concreto está en el carrito.

Para ello usaremos la función «find_product_in_cart( $product_id )» de la siguiente forma:

La función «find_product_in_cart()» nos devolverá true si encuentra el producto que le pasamos como parámetro se encuentra en el carrito.

De esta forma podremos trabajar con este resultado para, por ejemplo, mostrar algo, o añadir ese producto al carrito porque siempre tiene que estar, como en el ejemplo del «Producto regalo» que ya hicimos en otro tutorial.

Por lo tanto, aquí teneís el código de este snippet que primero comprueba si el producto cuyo ID es 80 está en el carrito y si no está, lo añade automaticamente.

El video


Ahora vamos a modificar un poco el ejemplo de tal forma que queremos que se añada cierto producto al carrito siempre que ya exista en el carrito otro en concreto.

Para este ejemplo, al producto que añadimos lo seguiremos llamando «Producto regalo» y al otro, al que tiene que estar en el carrito para que se añada éste lo llamaremos «Producto promoción«.

Entonces lo que hacemos es modificar un poquito el código para que:

  • Compruebe que el «Producto promoción» está en el carrito.
  • Si está, añadir el «Producto regalo» automaticamente.
  • Además, si está, antes de añadirlo, que compruebe si ya existe en el carrito.

Como podéis observar, esto se anima y podríamos hacer infinidad de cosas pero por hoy ya hemos tenido bastante.

El video

Si os interesa todo esto o tenéis dudas, dejadme un comentario y lo comentamos.

Saludos y mucho ánimo!

Añadir un producto al carrito de WooCommerce automaticamente mediante código

En este tutorial vamos a ver cómo podemos añadir un producto al carrito cada vez que un cliente entra en nuestra tienda online de manera automática y con solo unas pocas líneas de código.

Para ponernos en situación, imaginemos que por el motivo que sea, queremos regalar un producto a nuestros visitantes simplemente por visitar nuestra tienda online.

Pues bien, podemos crear un producto con coste 0 y activamos la opción para que sólo se pueda comprar un elemento de este producto en cada pedido.

Por supuesto este código será sólo la base para realizar cualquier otra configuración atendiendo a vuestra imaginación.

Bien, una vez que ya tenemos el producto creado. Pongamos «Producto regalo«, apuntamos el ID de ese producto para usarlo en el código.

Añadir un producto al carrito de WooCommerce automaticamente mediante código

El producto que utilizaremos en nuestro ejemplo tiene el ID 80. Apuntado!

Ahora pegaremos el siguiente código al final del fichero «functions.php» o en el fichero de nuestro plugin de funciones (opción más correcta).

Es muy sencillo aunque de esta forma, según está, la aplicación es realmente limitada o reducida pero ya veremos en otros tutoriales como ir complicando este ejemplo para adaptarlo a nuestras necesidades.

Como ya supondréis, debéis modificar el ID del producto en el código anterior por el ID de vuestro producto.

Si probáis este código veréis que en el carrito siempre va a aparecer este producto y si lo elimináis del carrito, vuelve a aparecer.

El video

Espero que os sea de utilidad este tutorial.

Cualquier cosa, como siempre, dejadme un comentario y lo vemos.

Saludos y mucho ánimo!

Función WooCommerce para comprobar si el carrito está vacío

En alguna ocación nos hemos encontrado con la necesidad de comprobar si el carrito está vacío para realizar alguna acción si es así o si no es así.

Es más, podemos incluir esta función en muchos snippets para filtar de alguna manera dependiendo de si el carrito está vacío o no.

La función que usaremos para comprobar si el carrito está vacío es is_empty().

Nos devuelve un valor true si está vacío y false si no lo está.

Ejemplo:

Vamos a realizar un ejemplo sencillo y para ello retomamos el post donde comentábamos cómo añadir un producto al carrito.

En este caso vamos a añadir ese producto al carrito sólo en el caso en el que el carrito esté vacío.

El código para realizar eso es el siguiente.

Poco a poco vamos conociento ciertas funciones y la forma de utilizarlas para sacarle mayor partido a nuestras tiendas online o nuestros desarrollos con WooCommerce.

Si tienes alguna duda sobre esto, déjame un comentario.

Mucho ánimo!

Cómo crear avisos personalizados en WooCommerce

Los avisos de WooCommerce son notificaciones que se muestran en diferentes sitios y/o circunstancias.

Un ejemplo claro es cuando cambiamos la cantidad de productos en el carrito o eliminamos algún producto y pulsamos sobre el botón «Actualizar Carrito».

Esta acción, además de actualizar el carrito, genera un aviso por parte de WooCommerce donde nos notifica que el carrito se ha actualizado como podemos ver en la siguiente imagen:

WooCommerce - Crear avisos personalizados

Bien, ahora que ya sabemos lo que son los avisos de WooCommerce, vamos a ver cual es el método para añadirlos con código para poder crear nuestros propios avisos y ajustarlos a nuestras necesidades.

wc_add_notice( $message, $notice_type)

Ésta es la función que usaremos para mostrar los avisos de WooCommerce.

Como vemos, tiene dos parametros:

  • $message es el contenido del aviso. El texto queremos mostrar o lo que queremos mostrar en ell aviso.
  • $notice_type es el tipo de aviso y las opciones son:
    • error
    • notice
    • success

Estos son los tres tipos de aviso:

WooCommerce - Crear avisos personalizados

El aspecto de los mismos depende del tema que estemos utilizando e incluso podríamos modificarlos nuestras necesidades.

Ahora vamos a poner un par de ejemplos para que nos temine de quedar claro.

Ejemplo 1:

En este primer ejemplo lo que hacemos es simplemente usar la función wp_add_notice() para que nos muestre las tres opciones de aviso disponible:

wp_add_notice( 'Este es un aviso de tipo error', 'error' );
wp_add_notice( 'Este es un aviso de tipo success', 'success' );
wp_add_notice( 'Este es un aviso de tipo notice', 'notice );

Sin más, para que veamos cómo se crean o implementan los tres tipos de aviso en WooComerce.


Ejemplo 2:

Ahora vamos a realizar un ejemplo un poco más complejo aunque no mucho.

Se trata de volver a darle una vuelta al ejemplo de añadir un producto de regalo.

En este caso lo que queremos es que si un cliente tiene en el carrito 2 productos, le mostramos un aviso para que sepa que si añade un producto más, tendrá el «Producto Regalo» gratis.

Otra cosa que tenemos en cuenta es que si el cliente tiene 3 productos y por lo tanto tiene el producto regalo añadido, si quita algún producto o cantidad, le quitamos automaticamente el producto regalo y mostramos un aviso de que ha perdido el «Producto Regalo».

Debemos de tener en cuenta que en este ejemplo estamos contando la cantidad de productos en total, no por separado. Es decir, que nos da lo mismo que esté comprando 3 productos diferentes que 3 unidades de un mismo producto, ok?

Aquí teneís el código:

Probadlo y me decís si os parece interesante o si os ha servido y cualquier duda me comentáis en un comentario, ok?

Saludos y ánimo!

Mostrar la descripción de los productos en la tienda y en las páginas de archivo de WooCommerce

Mostrar la descripción de los productos en la tienda y en las páginas de archivo de WooCommerce

En este pequeño snippet vamos conseguir mostrar la descripción corta del producto en los listados de procuto, tanto en la página de la tienda como en el resto de páginas de archivo como las páginas de categoría, etiquetas, etc…

Para ponernos en situación, lo que queremo conseguir es lo siguiente:

WooCommerce - Mostrar descripción corta de los productos en la tienda y páginas de archivo

La descripción corta de l producto se establece por cada producto, en la pantalla de edición.

Por lo tanto, con este snippet conseguiemos lo que se muestra en la imagen anterior.

Tan sencillo como utilizar la función the_excerpt() en el hook «woocommerce_after_shop_loop_item_title» que nos permite posicionar el contenido bajo el título.

Cualquier duda o sugerencia me podéis dejar un comentario.

Saludos y ánimo!

Ir al contenido