Aminogram: un portal donde cada distribuidor encuentra la versión correcta, en su idioma
Diseñamos la estructura y la lógica del portal privado de distribuidores de Aminogram, fabricante francés de dispositivos médicos de bioimpedancia, para que su red internacional descargue fichas, fotos, videos, logos y certificados vigentes sin tener que pedirlos por correo.
Un proyecto de nuestro servicio de Portal de distribuidores.Conoce el servicio →

- Cliente
- Aminogram
- Sector
- Dispositivos médicos · Portal de distribuidores
- Año
- 2026
- Servicios
- Arquitectura de información · Diseño UX/UI · Desarrollo de plugin a la medida · Mantenimiento
- Tecnologías
- WordPress
- Oxygen Builder
- Plugin propio (PHP)
- REST API
- WP-CLI
- LiteSpeed Cache
El reto
Aminogram fabrica en Francia los dispositivos de bioimpedancia Biody —el Biody Xpert ZM3, el Biody B.I.S y el software Biody Manager— y los vende a través de una red de distribuidores en varios países. Cada distribuidor necesita lo mismo para vender: fichas de producto, fotos, videos del protocolo de medición, logos, plantillas para redes, publicaciones científicas y, por tratarse de un dispositivo médico, los certificados que lo respaldan.
El problema no era la cantidad de material, sino su forma. Una misma pieza existe en varios idiomas, en variantes (con texto y sin texto, logo en blanco o a color, versión ligera), y se actualiza con el tiempo. Un certificado vale hasta una fecha y después ya no sirve. Organizado como una lista de descargas genérica, el distribuidor no sabía cuál era la versión vigente ni dónde estaba la de su idioma, y la forma más rápida de averiguarlo seguía siendo escribirle a Aminogram.
El objetivo del portal fue uno solo: que el distribuidor encuentre la versión correcta, en su idioma, sin tener que preguntar, y que el equipo de Aminogram pueda mantenerlo sin depender de un desarrollador.
Una estructura que responde a lo que el distribuidor quiere hacer
La primera decisión fue de arquitectura de información, no de diseño. En lugar de ordenar el material por formato o por departamento, lo agrupamos según para qué lo necesita el distribuidor:
- Communicate — fotos, videos, logos y branding, kit para redes sociales, stands y eventos, plantillas editables y flyers.
- Sell — fichas de producto y casos de éxito.
- Train — publicaciones científicas y el acceso a la plataforma de e-learning, con las cuentas de cada idioma listas para copiar.
- Compliance — certificados y documentos regulatorios.
Cada sección tiene su página, sus subsecciones y un filtro por producto. Para quien sabe exactamente lo que busca, la Library lista todo el material, del más reciente al más antiguo, con filtros combinables por sección, producto, tipo e idioma, y un buscador.


Un recurso, todos sus archivos
El corazón del portal es el modelo de contenido. Un recurso es una pieza —una ficha de producto, una sesión de fotos, un logo— con todos sus archivos dentro: los idiomas, las variantes y los formatos. El distribuidor ya no ve diez descargas casi iguales; ve una ficha con todo lo que existe de esa pieza.
Cada recurso se clasifica respondiendo cuatro preguntas, y cada respuesta tiene un uso en el sitio: dónde está (una sola sección, que da el menú y las migas de pan), de qué producto (ninguno, uno o varios, para el filtro), qué es y en qué idiomas, que se calcula solo.
La ficha vive en la base de datos; la portada es la única imagen pública, porque se usa en las tarjetas, y los archivos se guardan en una carpeta privada.
El tipo es el que más trabajo hace: documentos, fotos, videos o logos se presentan de forma distinta. Las fotos se muestran en galería con descarga individual o «Download all» en zip; los videos se previsualizan en la misma página antes de descargarlos; los logos se agrupan por versión y color, con sus formatos PNG, SVG y PDF; los documentos se listan por idioma.



Los idiomas no se capturan: se deducen
En un catálogo multilingüe, pedirle al equipo que marque a mano el idioma de cada archivo es la receta para que el filtro mienta. Por eso el idioma se guarda en cada archivo y el idioma del recurso se calcula a partir de ellos: si la ficha tiene archivos en inglés, francés y español, aparece en esos tres filtros, y deja de aparecer en cuanto se quita un archivo.
Además, al subir un archivo el portal propone el idioma, la versión y la variante a partir del nombre. «HOJA DE PRODUCTO BBIS FR.pdf» se reconoce como francés; «Logo White.png», como la variante blanca. El detalle está en los casos ambiguos: «de» e «it» son códigos de idioma, pero también palabras («Toma de medición», «Prise de mesure»), así que solo cuentan cuando aparecen al final del nombre, que es donde va el código. Todo lo que se detecta es una propuesta editable, no una decisión cerrada.


Fechas que significan algo
Una lista de descargas suele mostrar la fecha en que se modificó la entrada, y esa fecha cambia cada vez que alguien corrige una errata o reorganiza las categorías. Para el distribuidor no dice nada. Separamos dos fechas con sentido propio:
- Updated: la fecha del documento. Se actualiza sola cuando cambian los archivos (y se puede fijar a mano), no cuando se toca la ficha.
- Valid until: la vigencia de certificados y registros. La tarjeta muestra «Valid until 12 Mar 2027» y, cuando la fecha pasa, cambia a «Expired» en rojo, en la tarjeta y en el listado del administrador.

Versiones sin perder el historial
Cuando una ficha se actualiza, el equipo de Aminogram no sustituye el archivo: usa «Replace with new version». El archivo anterior pasa a Previous versions, con la fecha en que se archivó, y se puede restaurar o borrar. Los distribuidores ven solo la versión vigente; si algún día hace falta, un ajuste permite mostrarles también las anteriores.

Privado de verdad, no solo escondido
Todo el portal es privado: sin sesión, cualquier página lleva al acceso. Las cuentas las crea Aminogram (no hay registro público) y cada distribuidor tiene un rol propio que le da acceso al portal pero lo mantiene fuera del panel de WordPress. En el listado de usuarios, una columna de último acceso muestra quién entra y quién no.
La parte menos visible es la más importante: los archivos no viven en una carpeta pública. Se guardan en un directorio bloqueado del servidor y cada descarga pasa por el portal, que comprueba la sesión antes de entregar el archivo. Así, un enlace compartido fuera de la red no sirve de nada. Sobre esa base:
- «Download all» genera un zip con todos los archivos del recurso, lo guarda y lo regenera solo cuando los archivos cambian.
- Los videos se sirven por partes, de modo que se pueden previsualizar y adelantar en el navegador sin descargarlos completos.
- Las descargas usan siempre el archivo original, no la copia reducida que WordPress crea de las imágenes grandes: el distribuidor recibe la foto en la resolución con la que se entregó.

Material co-marcado, con aprobación
Los distribuidores hacen sus propias piezas con la marca: anuncios, folletos locales, publicaciones. En la sección de reglas de comunicación, un formulario les permite enviar su pieza a revisión a Aminogram antes de publicarla, sin salir del portal.
Un administrador hecho para quien sube el material
La experiencia del equipo que mantiene el portal se diseñó con el mismo cuidado que la del distribuidor. Crear un recurso es un formulario de una sola columna: sección, tipo, productos, archivos, fechas y enlace externo, en ese orden. Los archivos se arrastran y se sueltan, se reordenan arrastrando y cada uno muestra su miniatura con el idioma, la versión y la variante detectados.
Antes de publicar, el portal revisa que el recurso tenga sección, portada y al menos un archivo o enlace; si falta algo, lo guarda como borrador y avisa qué falta. Un recurso incompleto nunca llega a los distribuidores.

Diseño y lógica, cada uno en su lugar
El portal se maquetó en Oxygen, y toda la lógica —acceso, cuentas, recursos, descargas protegidas, filtros, fechas, versiones y formulario de aprobación— vive en un plugin propio que solo usa el núcleo de WordPress. El diseño se puede cambiar sin tocar la lógica, y la lógica no depende de plugins comerciales de terceros ni de sus licencias. El plugin incluye además un punto de salud que se consulta a diario para confirmar que el acceso y las descargas siguen funcionando.
Resultado
Aminogram pasó de una lista de descargas que había que explicar a un portal que se explica solo: organizado por lo que el distribuidor quiere hacer, con cada pieza reunida en una ficha, el idioma correcto a un filtro de distancia, certificados que avisan cuando vencen y archivos que solo se descargan con sesión. Y un equipo que lo mantiene sin pedir ayuda.
- recursos, cada uno con todos sus archivos
- 61
- secciones: Communicate, Sell, Train y Compliance
- 4
- tipos de ficha: documentos, fotos, videos y logos
- 4
- idiomas que el portal reconoce en los nombres de archivo
- 7
- wordpress
- portal privado
- arquitectura de información
- ux
- desarrollo a la medida