Divi es una de las mejores formas de crear páginas web bonitas y fáciles de diseñar si es verdad que no está todo optimizado pero bueno y que existe mucha gente que no le gusta porque genera mucho código basura, pues si es verdad… pero no cabe duda que los diseños son fantásticos y que si se sabe hacer bien las cosas puedes optimizar tu página con Divi ( Yo tengo un plugins Premium para ello, escríbeme aquí si necesitas mas info).
Para Woocoomerce yo no lo recomiendo mucho pero bueno, quizás para ciertas tiendas online pequeñas si puede ser una buena opción.
Crear el botón de añadir al carrito en Divi
Lo que vamos a hacer a continuación en añadir un código en el fichero que nos permita añadir de forma automática ese botón de comprar en cada una de las fichas del producto.
Crear un Child Theme:
Siempre, siempre, siempre que vayas a añadir código en algún fichero PHP, debes de crear un tema hijo para así evitar problemas (Que seguro los tendrás en la próximas actualizaciones).
Yo os recomiendo este plugins: Child Theme Configurator (Algún día creare un guía), pero es muy fácil lo único que debes hacer es crear un nuevo tema que parte del padre y ponerle el nombre (ejemplo DiviTemaHijo) y añadir los fichero que vas a modificar… yo suelo añadir el funtion.php el header y los styles (Algunos ya los coge por defecto)
Activar el nuevo Child Theme:
En apariencia temas eliges el nueva tema que has creado: DiviTemaHijo y activarlo.
Añadir el botón carrito en Divi
Vamos a la parte importante… y como añadimos el botón?
Debemos de acceder a vuestro servidor y buscar el fichero function.php… (Hacer antes una copia y cuidado con los paréntesis corchetes… etc.)
El fichero se encuentra en la siguiente ruta de tu servidor:
wp-content / themes / DiviTemaHijo/ functions.php
// AÑADIR AL CARRITO
function dac_add_cart_button () {
add_action( ‘woocommerce_after_shop_loop_item_title’, ‘woocommerce_template_loop_add_to_cart’, 10 );
}
add_action( ‘after_setup_theme’, ‘dac_add_cart_button’ );
Y YA ESTA AÑADIDO EL BOTON DEL CARRITO…
NOTA: SINO TE FUNCIONA REVISA LAS COMILLAS¡¡ Ver comentario de Jesus Lorenzo
Como personalizar el mensaje de añadir al carrito en Woocomerce y DIVI
Si lo que quieres es personalizar el texto que aparece en el botón de comprar o añadir al carrito y poner otros mensajes te permite, Dependiendo si el producto es simple o tiene variaciones o diferentes mensajes
// Cambia el texto del botón Añadir al carrito en Woocoomerce en la categorías de productos
//Modificar texto del botón Añadir al carritofunction custom_woocommerce_product_add_to_cart_text() {
global $product;
$product_type = $product->product_type;switch ( $product_type ) {
case ‘external’:
return __( ‘Ir’, ‘woocommerce’ );
break;
case ‘grouped’:
return __( ‘Detalles’, ‘woocommerce’ );
break;
case ‘simple’:
return __( ‘Comprar’, ‘woocommerce’ );
break;
case ‘variable’:
return __( ‘Opciones’, ‘woocommerce’ );
break;
default:
return __( ‘Detalles’, ‘woocommerce’ );
}}
add_filter( ‘woocommerce_product_add_to_cart_text’ , ‘custom_woocommerce_product_add_to_cart_text’ );
Otro mensaje que podemos modificar es el SIN STOCK.. si tenemos articulos, podemos cambiarlo y poner Agotado o Vendido.
//* Cambiar el texto de WooCommerce «Sin stock» por «Agotado»
add_filter(‘woocommerce_get_availability’, ‘availability_filter_func’);
function availability_filter_func($availability){
$availability[‘availability’] = str_ireplace(‘Sin stock’, ‘Agotado’, $availability[‘availability’]);
return $availability;}
Te ha gustado este artículo? Agradeceríamos pulsaras en las 5 estrellas o dejaras tu opinión.


no me funcionó ese código, pero gracias
Veo en tu web que el boton de añadir lo tienes.. no te funciono la segunda parte de personalizar el nombre? Comentamos y trato de ayudarte. Un saludo
No me funcionó tu código. Lo pegué al final del archivo functions.php y no hace nada…..
Vale… el error está en las comillas que al copiar de tu página las pone tipográficas y luego no las entiende….. Ahora ya funciona.
Genial¡¡¡ Gracias por el comentario¡¡¡ Lo anoto en la web en grande para que no le de problemas al resto¡¡¡
Gracias CRACK
Muchas gracias!! excelente me funciono muy bien y me ayudo lo de las comillas :)
Una pregunta, como se puede personalizar el botón de añadir a carrito? que únicamente afecte a la vista previa de los productos? Muchas Gracias y saludos
Hola Maria pues no sabria decirte.
Quizas con elementor + Astra ( OSea algun theme cobn vista previa te deje).
Quizas con un plugin especial ( En vez de meterlo por codigo hacerlo con plugin) yo lo hago asi por temas de optimizacion. Prueba los plugin de repositorio «Add to cart button text» https://es.wordpress.org/plugins/search/Add+To+Cart+Button+Text/ ( Aunque los que probe, eran bastante simples)
Sino hay codigo para modificar textos por categorias o similar.
https://diegol.top/woocommerce/snippets/cambios-en-anadir-al-carrito-en-woocommerce/
https://ayudawp.com/como-cambiar-el-texto-anadir-al-carrito-en-woocommerce/
Muchas gracias por la mención Alberto!
Gracias a ti¡¡ Ya he agregado a linkedin y escuchando tu podcast :)
Hola a ver si podéis ayudarme, cree una tienda para cliente con Woocommerce y Divi, todo iba bien hasta que un día en ciertos dispositivos móviles, cuando quisieron añadir el producto al carrito, el botón se les movía y no podían finalizar la acción.
He mirado el tema de la anchura de las secciones y elementos y está en auto por lo que no entiendo cuál podría ser el problema. ¿Alguna idea?
Hola Cris, pues si seguro que es el ancho hover de la seccion, a veces mete un icono, o simplemenete aumenta el tamaño o el grosor de la letgra. habria que analizar la web para saber mas.
Buenas.Desde que he actualizado woocomerce y divi. Sorpresa¡¡¡! El botón de compra desaparece y sólo aparece si pasar el ratón por encima. Una clienta me ha llamado para decirme que no podía meter el producto al carrito. Por dios¡¡¡!! Casi me da algo. Alguna solución sin sobrescribir el código en el function.php?
Gracias
Hola, existe algún código para cambiar el color del botón agotado a rojo?
Muchas gracias
Pues seguramente, deberia tener asociado un class o id y seria simple para modificar. Pon la url y un ejemplo y miramos