El otro día os hablamos de nuestro cliente EuroPalets Group y de cómo creamos su catálogo y tienda virtual simultáneas en WooCommerce en modo catálogo para usuarios no registrados. Pues bien, hoy os vamos a hablar del mismo cliente y de otra de las necesidades que nos planteó.

EuroPalets Group necesitaba que le añadiéramos a las páginas de productos de su tienda online bajo WooCommerce una serie de campos personalizados en el que todos debían mostrar un icono personalizado, y algunos, pero sólo algunos de ellos, un texto que se pudiera personalizar en la pestaña Generales disponible en la edición de los productos.

Solución

Para hacer realidad los deseos de EuroPalets Group creamos una serie de funciones PHP, concretamente tres, en el archivo functions.php del tema hijo que indican cuáles de los ocho campos personalizados solicitados son campos de texto y cuáles son campos de selección, además de su etiqueta label e identificación interna, así como el icono gráfico que le corresponde a cada uno de los campos. Esto lo hicimos con tres arrays para que en el futuro se puedan añadir fácilmente más campos e iconos personalizados, si son necesarios.

Aquí tienes el código PHP empleado en este caso concreto:

Copiar al portapapeles

Para darle el estilo que necesitábamos a los iconos sólo tuvimos que añadir en el fichero style.css del tema hijo el siguiente código CSS:

Copiar al portapapeles

Resultado

En la ficha interna del producto veremos los nuevos campos personalizados en la pestaña Generales.

Campos personalizados en la página de configuración de producto

Mientras que en la página de producto pública se verá de esta forma tan gráfica.

¿Cómo añadir iconos personalizados en los productos?

Otras alternativas

En nuestro caso hemos optado por mostrar los iconos en la página de producto tras el resumen, las imágenes y el precio, si bien también se pueden mostrar en otros sitios alternativos o de forma simultánea simplemente modificando la última línea del código PHP propuesto, o añadiendo cualquiera de estos ejemplos, aunque hay muchas más alternativas.

Copiar al portapapeles

De esta forma podemos hacer que los iconos aparezcan en la pestaña Descripción de cada producto, o en los listados de productos, por ejemplo. Las alternativas son múltiples y variadas, aunque para eso os recomendamos que creáis distintas clases CSS para poder personalizar los campos según la ubicación de los mismos.

Conclusión

Con estos pequeños códigos PHP y CSS hemos creado una solución a la par simple que elegante a la demanda planteada por EuroPalets Group, mostrar iconos personalizados en sus páginas de producto.

Esperamos que os guste y os resulte útil este pequeño tutorial, y como siempre quedamos a la espera de vuestros comentarios y aportaciones.

Artículos relacionados

Comentarios

Suscríbete
Notificar de
guest
12 Comentarios
Más antiguos
Más recientes Más votados
Inline Feedbacks
Ver todos los comentarios
Manuel
Manuel
17 de junio de 2015 20:08

Vaya, vaya, este código tiene muy buena pinta, pero… a mi me da error :(
A ver si podemos encontrar la solución…

1º Me da tres errores de este tipo:

Parse error: syntax error, unexpected ‘}’ in /home/…/themes/tema-child/functions.php on line 51

Parse error: syntax error, unexpected ‘}’ in /home/…/themes/tema-child/functions.php on line 64

Parse error: syntax error, unexpected ‘}’ in /home/…/themes/tema-child/functions.php on line 90

Los soluciono moviendo la apertura «{» para un renglón nuevo. Creo que en las lineas 27,43 y 55 del código vuestro código que indicáis arriba, el comentario de cada línea afecta también a la apertura «{» quedando esta a su vez comentada… Corregidme si me equivoco…

2º Pero luego me da un error diferente que no se como solucionar…

Fatal error: Call to undefined function woocommerce_wp_text_input() in in /home/…/themes/tema-child/functions.php on line 41

¿Cómo puedo solucionarlo?
¿Puede ser que me esté pasando por usar la ultima versión de woocommerce?

Muchas gracias de antemano por vuestra ayuda. Vuestros comentarios y post siempre son de mucho interés. :)

Art Project Group
Art Project Group
17 de junio de 2015 20:59
Responder a  Manuel

A veces WordPress hace código creativo con el código PHP que insertamos en las entradas, y esta vez ha sido una de ellas.

Ya está arreglado el código fuente original, por lo que ahora no debe devolverte ningún tipo de error. En cuanto al segundo error, no debería de existir, ya que la función woocommerce_wp_text_input es nativa de WooCommerce.

Muchas gracias por el aviso.

Manuel
Manuel
18 de junio de 2015 11:19

jajajaja me ha gustado eso de que WordPress hace código creativo, :) muy bueno…

Al lío, efectivamente ya está corregido y a mi me funciona bien, me queda jugar con las imágenes y cambiar todas las variables y css para mi caso concreto, que nada tiene que ver con vuestro ejemplo, pero me viene de perlas.

Buen código chicos, felicidades!!!

Manuel
Manuel
18 de junio de 2015 12:30

Se me acaba de ocurrir una cosa… ¿sería posible hacer que estos iconos sean visibles desde la descripción genérica de todos los productos en la tienda? para que sea más fácil de identificar sin tener que entrar a cada producto uno por uno para ver sus características… no sé si es factible vamos…

Art Project Group
Art Project Group
18 de junio de 2015 12:32
Responder a  Manuel

Se ve que no te has leído bien la entrada :-D

Un saludo.

Manuel
Manuel
18 de junio de 2015 13:24

jajajaja que despiste… bueno, gracias nuevamente!!!!

adrian
adrian
24 de junio de 2015 22:16

Excelente solución. Gracias por compartir.

Carlos
Carlos
20 de mayo de 2016 10:11

Genial hace mucho buscaba esto!

Jorge
Jorge
26 de julio de 2018 14:26

Hola buenas tardes!

Aunque parece que hace tiempo que no se comenta en este artículo yo acabo de encontrarme con este pedazo código y bueno probando he visto que cuando seleccionas producto variable en lugar de producto simple desaparecen los checkbox.

Hay una parte del código que parece ir enfocada a mostrar los checkboxes cuando el precio es variable, entiendo que es variable en función de si hay o no variaciones.

Podéis echarme una mano?

Muchas gracias por haber compartido este código chicos! Buen trabajo!!

Art Project Group
Art Project Group
26 de julio de 2018 18:41
Responder a  Jorge

El código publicado está creado y pensado exclusivamente para productos simples y nunca va a ser funcional en productos variables.

Si necesitas ayuda con la personalización del mismo no dudes en contactar con nosotros para que podamos presupuestarte lo que necesites.

Un saludo.

walter
walter
8 de abril de 2024 19:58

Perdón veo que hace mucho no se escribe en esta entrada, pero me encontré con esta solución a lo que necesito resolver. Pero tengo un problema de visualización.
los campos personalizados me figuran en el panel y cuando los cargo aparecen los valos en la página de producto, pero no logro hacer que se muestren los íconos.
Obviamente modifiqué la dirección de los íconos por unos que yo tengo subidos en mi galería de WordPress, pero aún así no se muestran.
Podrán ayudarme?

Productos y servicios

Últimas publicaciones

Últimos comentarios

¡Suscríbete!

Lista de correos de APG

PROTECCIÓN DE DATOS: De conformidad con las normativas de protección de datos, le facilitamos la siguiente información del tratamiento: (+)

  • Responsable: Art Project Group.
  • Fines del tratamiento: dar respuesta a las consultas o cualquier tipo de petición que sea realizada por el usuario a través de cualquiera de las formas de contacto que se ponen a su disposición en la página web. Envío de comunicaciones de productos o servicios (con su consentimiento).
  • Derechos que le asisten: acceso, rectificación, portabilidad, supresión, limitación y oposición. Más información sobre el tratamiento en los Política de Privacidad.

¡Lo que contamos en !

Se ha publicado #WooCommerce 10.7: mejoras en rendimiento, analítica más completa y optimización de la Store API para integraciones más rápidas y eficientes.

Una versión centrada en escalabilidad y datos.

¡Actualiza!

15 de abril de 2026

Se ha publicado #WooCommerce 10.6.2: actualización de mantenimiento con correcciones de errores y mejoras de estabilidad tras la rama 10.6.

Recomendado actualizar para evitar incidencias.

1 de abril de 2026

Se ha publicado #WordPress 6.9.4: actualización de mantenimiento que corrige errores de seguridad detectados en el núcleo y el editor para mejorar la estabilidad general.

Debes actualizar.

11 de marzo de 2026

Se ha publicado #WordPress 6.9.3: actualización de mantenimiento que corrige errores detectados en el núcleo y el editor para mejorar estabilidad y compatibilidad.

Recomendado actualizar.

11 de marzo de 2026