Cómo añadir un campo de personalización en un producto de woocommerce

Con un plugin gratuito

.- Instala el siguiente plugin -> https://wordpress.org/plugins/woocommerce-custom-options-lite/
.- Una vez instalado edita la ficha del producto que quieres añadir el campo de texto.
.- Veras que en el bloque » datos de producto » tienes una nueva opción » Custom Options «
.- selecciona la opción » Custom imput text area «
.- En la opción » label » añade el texto que quieras que tenga como titulo o descripción de ese box «
.- Guarda la ficha y revisa si se muestra.

Fuente: https://www.webempresa.com/foro/pack-tienda-wordpress/introducir-un-campo-de-texto-para-que-el-cliente-pueda-escribir-dentro-de-los-productos/paged/2

Qué pasa, que este plugin me daba problemas. Estaba dispuesta a comprar la versión de pago, pero no me atrevía siendo que la gratis no iba bien. Contacté a soporte y parecía que me iban a ayudar pero una semana después me seguían contestando que ya me avisarían cuando hubiese alguna actualización.

Con un plugin de pago

Después de buscar, y como me fío de la gente de Boluda y dan soporte en español, decidí comprar el plugin en su web.

Este plugin, resulta ser igual que el vendido en la página oficial de WooCommerce, pero más barato. Ventajas de comprar en Boluda? es más barato, el hecho de comprárselo a gente que te suena y tener el soporte ahí. Desventajas? Boluda no da actualizaciones automáticas, cosa que comprándolo en WooCommerce sí.

Por lo demás, funcionan exactamente igual.

Solucionar errores

Tras instalar y configurar el plugin que adquirí a través de boluda.com tenía el error de que todo iba bien hasta que intentaba añadir el producto con sus opciones al carrito. Estas son las instrucciones que me dieron para solucionarlo:

Hola Ana!!

Aunque hayas hecho la desactivación de los plugins, prueba a hacer por orden, este test de conflicto (algo completamente normal en estos casos, no tengas miedo): 

Para ello realiza antes una copia de seguridad con All In One WP Migration: https://www.youtube.com/watch?v=Q8CPeNSC_tg

Lo primero que te recomiendo es que reinstales los archivos del core de WordPress. Esto se hace de forma muy sencilla y no perderás nada. Ve al dashboard de WordPress > Actualizaciones > Reinstalar ahora.

Luego intenta tener todos los plugins actualizados. Si tienes plugins de boluda.com, sus actualizaciones las vamos subiendo a la intranet. Si ves que hay nueva (aunque no te aparezca el aviso, puede tener una actualización nueva), ve a boluda.com/intranet y descarga el zip. Para actualizar hay dos maneras:

– Manualmente: https://boluda.com/tutorial/actualizar-plugins-de-wordpress-manualmente
– Instalando este plugin: https://es.wordpress.org/plugins/easy-theme-and-plugin-upgrades/ y subiéndolo con un zip como si fueras a instalar uno nuevo 😀

Si ves que la versión del plugin que tenemos en la intranet no es la última, avísanos que la subiremos lo antes posible.

Una vez tengas los plugins actualizados y si te sigue dando el error, prueba a hacer un test de conflicto. Este test es un básico que se realiza para poder detectar errores. No vas a perder ningún dato si realizas paso a paso cada indicación. Para empezar a hacer el test de conflicto, sigue los siguientes pasos:

– Desactiva la caché, puede ser a tres niveles:

  • Si tienes un plugin de caché: desactívalo o renueva la caché
  • Si tu servidor tiene una gestión caché (tipo siteground): desactívala o renueva la caché. Si tienes dudas de este paso, pregunta a tu hosting lo siguiente: «Hola, ¿tenéis algún sistema de caché activada a nivel servidor que me impide ver los cambios que realizo en mi web? Y si es así, ¿cómo puedo renovarla?
  • Renueva la caché de tu navegadorhttp://help.guestcentric.com/es/how-can-i-refresh-my-browser-s-cache.html

– Hacer un barrido en tu base de datos con Sweep -> https://es.wordpress.org/plugins/wp-sweep/, una vez instalado y activado. Ve a Herramientas > Barrer, Barrer todo. Una vez limpiada la base de datos, vuelve a probar. 

– Activa un tema como Storefront o Twenty Twelve y comprueba si funciona. En el caso de que el debug sea con algún plugin que dependa del Framework Genesis, activa el tema hijo Genesis Sample. Si con este tema funciona, tienes un conflicto con el tema que tenías instalado. La solución sería hablar con los desarrolladores del tema y explicarles el conflicto. Otra solución, que vemos mejor sería considerar el cambio de tema, ya que es una mala señal que un tema, que no debe tener funcionalidades, dé conflicto con esta funcionalidad.

– Si así no funciona, el siguiente paso es desactivar todos los plugins. Luego ir reactivándolos uno a uno hasta que dé el error, para detectar cuál es el «culpable» y a partir de ahí decidir qué plugin usar o si el plugin con el que da conflicto puede ser sustituido por otro que no lo dé.

Si sigue dando error aún haciendo el test de conflicto, puede que sea falta de memoria en tu hosting o la versión de PHP que sea inferior a la 7. O incluso que alguna función de php en concreto no esté habilitada en tu hosting. Prueba a hablar con el soporte de tu proveedor de hosting y explicarle el problema, y que te digan la forma de aumenta la memoria php de tu hosting, cambiar la versión de PHP o habilitar la función pertinente.

Otra cosa que puede estar fallando es que algún plugin necesite acceder a archivos o directorios de tu WordPress que no tengan los permisos adecuados. Para cambiar los permisos de tu directorio de hosting por el administrador de archivos tanto de CPanel como Plesk (es parecido en ambos): https://www.siteground.es/kb/puedo-cambiar-los-permisos-archivos-carpetas-desde-cpanel/  lo ideal para que vaya bien es permisos 755. Esto no es la panacea, ya que hay plugins que necesitan permisos más elevados para funcionar. Si es aún haciendo esto, sigue dando problemas, busca en la documentación del plugin pertinente algo relacionado con «file permission requirements». Puedes poner en Google «file permission requirements» + «el nombre del plugin» y si hay algo especial, seguro que sale.

Si aún así nada, habrá que mirar en los logs qué está ocurriendo. Puedes mirar los del propio servidor (pregúntales a tu hosting dónde los tienen) y activar el propio sistema de log de WordPress poniendo lo siguiente en wp-config.php

// Activar modo WP_DEBUG
define(‘WP_DEBUG’, true);
// Activar registro de depuración al fichero /wp-content/debug.log
define(‘WP_DEBUG_LOG’, true);
// Desactiva mostrar los errores y avisos 
define(‘WP_DEBUG_DISPLAY’, false);
@ini_set(‘display_errors’,0);
// Usa versiones dev de ficheros centrales JS y CSS (solo necesario si estás modificando esos ficheros centrales)
define(‘SCRIPT_DEBUG’, true);

Una vez puesto, haz la misma operación y mira en wp-content, el archivo generado debug.log qué pone (o nos lo pasas), a ver si hay alguna pista de lo que puede estar ocurriendo.

 boluda.com