Si tienes una tienda en línea con WooCommerce, probablemente te has encontrado con situaciones en las que no quieres mostrar el precio de un producto de inmediato. Puede ser porque el precio varía, porque solo lo das bajo pedido o porque quieres que los clientes te contacten primero. Para solucionar esto, he creado un código que permite ocultar el precio de un producto y en su lugar mostrar un botón para que los clientes soliciten información.
A continuación, vamos a ver en términos sencillos qué hace cada parte del código y cómo ayuda a implementar esta función en WooCommerce.
1. Agregar la opción «Solicitar precio» en el panel de WooCommerce
Primero, el código agrega una nueva opción en la configuración de cada producto dentro de WooCommerce. Esta opción aparece como una casilla de verificación que dice «Solicitar precio». Cuando la activas, se oculta el precio del producto y el botón de «Añadir al carrito», reemplazándolos con un formulario de contacto.
Esta parte del código se encarga de:
- Mostrar la casilla en el panel de administración del producto.
- Guardar la elección del administrador cuando se guarda el producto.

2. Ocultar el precio y el botón de compra
Una vez que la opción «Solicitar precio» está activada en un producto, el código revisa si debe ocultar el precio y el botón de «Añadir al carrito». Si la opción está marcada, el código:
- Elimina el precio del producto de la vista de la tienda.
- Quita el botón de compra.
- En su lugar, muestra un botón que dice «Solicitar precio», que abre un formulario para que los clientes envíen su consulta.

3. Crear y mostrar el formulario de solicitud
Cuando un usuario hace clic en el botón «Solicitar precio», aparece un formulario que le pide su nombre, correo electrónico, teléfono y una confirmación de que acepta la política de privacidad. Este formulario se ve limpio, ordenado y fácil de usar.
La parte del código que maneja este formulario:
- Se encarga de mostrarlo solo cuando el usuario lo necesite.
- Recoge la información que ingresa el cliente.
- Se asegura de que todos los campos sean obligatorios antes de enviar la solicitud.

4. Guardar la solicitud en la base de datos
Para que las solicitudes no se pierdan, el código las guarda en una base de datos especial dentro de WordPress. Esto permite que el administrador de la tienda pueda revisarlas después.
En detalle, esta parte del código:
- Verifica que la solicitud es válida antes de procesarla.
- Guarda la información del cliente (nombre, correo, teléfono y el producto por el que pregunta).
- Muestra un mensaje de éxito cuando la solicitud se ha enviado correctamente.

5. Crear una página en el administrador para ver las solicitudes
No tendría mucho sentido recolectar solicitudes si no hay un lugar donde verlas. Por eso, el código crea una nueva página dentro del panel de administración de WordPress donde se pueden revisar todas las solicitudes de precios.
En esta página, el administrador de la tienda puede:
- Ver todas las solicitudes recibidas en una tabla bien organizada.
- Hacer clic en el email del usuario y abrir directamente el gestor de email para contestarle.
- Marcar una solicitud como «Contestada».
- Eliminar solicitudes innecesarias.
- Buscar y ordenar solicitudes.

6. Marcar solicitudes como contestadas o eliminarlas
Por último, el código también permite marcar una solicitud como «Contestada» o eliminarla por completo. Esto se hace con dos botones dentro de la tabla de solicitudes.
Cuando el administrador hace clic en «Marcar como contestada»:
- La solicitud cambia de estado dentro de la base de datos.
Cuando el administrador hace clic en «Eliminar»:
- La solicitud desaparece de la lista y se borra definitivamente.
Este código ofrece una solución simple pero efectiva para ocultar precios en WooCommerce y permitir que los clientes soliciten más información. Con esta función, puedes manejar mejor los productos cuyo precio no es fijo o que requieren contacto directo antes de la compra. Además, la integración con el panel de administración facilita la gestión de las solicitudes, haciendo que todo el proceso sea más ordenado y profesional.
El siguiente código tienes que agregarlo en el functions.php de tu tema hijo o utilizar un plugin como CODE SNIPPETS. También puedes crear tu propio plugin con unos simples pasos.
🔐 Este contenido es solo para suscriptores premium.
Estos códigos de la zona premium se mantienen regularmente. Si usas un código y no te funciona correctamente, puedes abrir un ticket de soporte explicando los detalles y lo vemos.




¿Qué te ha parecido este snippet de código?