Our Technology
Explore el ecosistema de paquetes compartidos detras de los modulos mypresta.rocks. 12 librerias propietarias, interfaz admin consistente y compatibilidad multi-version.
No solo modulos — una plataforma
Cada modulo de mypresta.rocks funciona sobre una base compartida de 12 paquetes propietarios que hemos construido y mantenido desde 2012. No son wrappers ni generadores de boilerplate — son librerias construidas a proposito que resuelven problemas dificiles en el desarrollo de modulos PrestaShop.
Cuando instalas uno de nuestros modulos, obtienes anos de ingenieria acumulada: interfaces admin consistentes, seleccion inteligente de entidades, compatibilidad multi-version desde PS 1.6 hasta 9.x e infraestructura compartida que significa que los errores corregidos en un modulo se corrigen en todos.
Los paquetes compartidos
prestashop-admin
Nuestro paquete mas fundamental. Cada panel de administracion de modulo esta construido sobre el — un toolkit de UI completo que proporciona:
- Controladores base — MPRAdminController y MPRListController con carga AJAX de imagenes integrada, edicion inline y modales de campos
- Filtrado avanzado — filtrado basado en base de datos con seis tipos de filtro: texto, rango numerico, rango de fechas, seleccion, seleccion multiple y booleano
- Gestion de columnas — los usuarios eligen que columnas mostrar, guardan presets y el estado persiste por empleado
- 20+ componentes JavaScript — datepickers, modales, toasts, editores inline, listas AJAX, todos funcionando juntos
- 35+ estilos de componentes SCSS — apariencia consistente en cada modulo, cada version de PrestaShop
Por eso cada panel de administracion de modulo mypresta.rocks se siente igual. No es coincidencia — es un toolkit compartido con mas de una decada de iteracion.
prestashop-entity-selector
Probablemente nuestro paquete mas complejo. Un widget universal para seleccionar entidades de PrestaShop con logica de inclusion/exclusion.
- 18 tipos de entidades — productos, categorias, fabricantes, proveedores, paginas CMS, empleados, clientes, grupos de clientes, transportistas, zonas, paises, monedas, idiomas, tiendas, perfiles, estados de pedido, impuestos y mas
- 130+ metodos de seleccion — seleccionar productos por categoria, fabricante, etiqueta, atributo, caracteristica, combinacion, condicion, visibilidad, estado de stock, rango de precios, rango de fechas, rango de ID, patron de nombre y docenas mas
- Logica de inclusion/exclusion — define lo que se incluye, luego recorta las excepciones. “Todos los productos en la categoria X, excepto los del fabricante Y, a menos que esten en oferta”
- Agrupacion con AND/OR — multiples grupos de seleccion combinados con logica booleana, cada uno con su propio limite y ordenamiento
- Vista previa en vivo — ve los elementos coincidentes actualizarse en tiempo real mientras ajustas las condiciones
En lugar de que cada modulo reinvente la seleccion de productos con un simple autocomplete, todos comparten un componente potente y probado.
prestashop-compatibility
PrestaShop cambia significativamente entre versiones. Firmas de controladores, rutas de plantillas, formatos de respuesta AJAX, nombres de hooks — todo diferente entre 1.7 y 8.x y 9.x.
Este paquete absorbe esas diferencias. Los modulos programan contra una API estable, y la capa de compatibilidad maneja el comportamiento especifico de la version por debajo. Asi es como soportamos PS 1.6 hasta 9.x desde una unica base de codigo sin llenar el codigo de verificaciones de version.
template-injector
Algunos modulos necesitan inyectar contenido en las plantillas del tema sin requerir ediciones manuales. Este paquete escanea archivos Smarty .tpl, identifica puntos de llamada de hooks e inyecta la salida del modulo en la ubicacion correcta.
- Escaneo automatico de plantillas — descubre puntos de inyeccion en cualquier tema
- Resolucion consciente del tema — maneja temas hijo, overrides de plantillas y fallbacks del tema padre
- Seguimiento de inyecciones — sabe que se inyecto donde, para poder eliminarse limpiamente en la desinstalacion
- Gestion de perfiles — diferentes configuraciones de inyeccion para diferentes contextos
Usado por modulos como mprsubtitles, mprblogrevolution y mprhtmlblocks que necesitan colocar contenido en ubicaciones donde PrestaShop no proporciona hooks.
prestashop-url
La gestion de URLs en PrestaShop es notoriamente fragil. Este paquete proporciona un verdadero motor de URLs con gestion de patrones, enrutamiento y manejo del ciclo de vida de entidades.
- Generacion de URL basada en patrones — define patrones de URL con variables, genera automaticamente URLs amigables para SEO
- Integracion del ciclo de vida de entidades — cuando un producto o categoria se crea, actualiza o elimina, las URLs se actualizan automaticamente
- Backends de almacenamiento intercambiables — patrones basados en base de datos o configuracion segun el caso de uso
- Gestion de esquemas — gestiona su propia creacion y migracion de tablas de base de datos
Impulsa mprseorevolution y mprfriendlyurl.
prestashop-icons
Los temas de PrestaShop usan diferentes conjuntos de iconos — Hummingbird usa Material Icons, Classic usa Font Awesome, algunos temas de terceros usan algo completamente diferente.
- Nombres de iconos semanticos — los modulos usan nombres como “cart”, “success”, “edit”, “delete” en lugar de nombres de clases especificos de fuente
- Deteccion del tema — detecta automaticamente que conjunto de iconos usa el tema activo y mapea los nombres semanticos a las clases correctas
- Self-hosting — si el tema no incluye la fuente de iconos necesaria, el paquete la incluye
- Hojas de sprites SVG — 38 iconos de marcas de pago y 12 iconos de redes sociales con variantes claras, oscuras y de acento
prestashop-session
Seguimiento de sesion compartido entre modulos, usando una unica tabla de base de datos mpr_sessions.
- Deteccion de bots — identifica crawlers y trafico automatizado antes de que llegue a la logica del modulo
- Fingerprinting de dispositivos — deteccion de navegador, sistema operativo y tipo de dispositivo
- Hashing de sesion — identificacion de sesion consistente entre cargas de pagina
Usado por mprsecurityrevolution y mprcheckoutrevolution — comparten datos de sesion en lugar de que cada uno rastree independientemente.
prestashop-schedule & prestashop-public-holidays
Logica temporal que necesitan multiples modulos:
- Widget de programacion — rangos de fecha/hora, programaciones semanales recurrentes, gestion de zonas horarias
- Gestion de festivos — base de datos centralizada de festivos compartida entre modulos a traves de la tabla mpr_public_holidays
- Usados juntos — “aplicar este descuento en dias laborables excepto festivos” en mprsalesrevolution, o “mostrar estos resultados de busqueda solo durante el horario comercial” en mprsearchrevolution
prestashop-target-conditions & prestashop-front
Paquetes mas recientes en nuestro ecosistema:
- Target Conditions — reglas de segmentacion reutilizables (por grupo de clientes, pais, dispositivo, valor del carrito, etc.) compartidas entre modulos que necesitan logica de visualizacion condicional
- Componentes front — bloques de construccion de UI frontend para la salida del modulo orientada al cliente, asegurando un estilo consistente sin conflictos con el tema
Por que esto es importante para ti
Consistencia
Cada panel de administracion de modulo funciona igual. Mismo filtrado, misma gestion de columnas, mismos atajos de teclado, mismos patrones AJAX. Aprende un modulo y sabes como funcionan todos. Esto no es una guia de estilo — es codigo compartido.
Fiabilidad
Un error corregido en prestashop-admin se corrige en cada modulo que lo usa en la proxima actualizacion. Los parches de seguridad se propagan a todos. Cuando optimizamos las consultas de base de datos del entity selector, cada modulo con seleccion de productos se vuelve mas rapido.
Soporte multi-version
La capa de compatibilidad significa que puedes actualizar PrestaShop sin preocuparte por nuestros modulos. Probamos en PS 1.6, 1.7, 8.x y 9.x — y la infraestructura compartida maneja las diferencias para que los modulos individuales no tengan que hacerlo.
Sin conflictos
Los modulos que comparten tablas de base de datos (ps_mpr_config, mpr_sessions, mpr_public_holidays) estan disenados para coexistir. Instala cinco de nuestros modulos y se coordinan a traves de la infraestructura compartida en lugar de interferir entre si.
Ligero
Paquetes compartidos significan codigo compartido. El entity selector no se duplica en cada modulo — se instala una vez y lo usan todos. Esto mantiene los archivos ZIP de los modulos mas pequenos y evita la sobrecarga de incluir la misma libreria multiples veces.
Los numeros
- 12 paquetes compartidos mantenidos como librerias separadas con su propio versionado
- 30+ modulos construidos sobre esta base
- 130+ metodos de seleccion de entidades solo en el entity selector
- 4 versiones principales de PrestaShop soportadas desde una unica base de codigo (1.6, 1.7, 8.x, 9.x)
- 20+ componentes JavaScript de admin para interactividad consistente
- 13 anos de desarrollo continuo desde 2012
Arquitectura abierta
Todos los paquetes compartidos usan el namespace PHP MyPrestaRocks con autoloading PSR-4. Se instalan via Composer como dependencias reales — no copiadas y pegadas en directorios de modulos. Cada paquete tiene sus propias restricciones de version, y los modulos declaran que versiones necesitan.
Esto significa que cuando miras dentro del directorio vendor/myprestarocks/ de un modulo, estas viendo librerias reales y mantenidas — no depositos de codigo abandonados.
Velo en accion
La mejor manera de entender lo que hacen estos paquetes es probar un modulo. Cada modulo en nuestro catalogo ofrece una demo gratuita — instalalo, abre el panel de administracion y ve la infraestructura compartida en accion.
Preguntas sobre nuestra arquitectura o interes en desarrollo personalizado? Contactanos.
Need more help?
Browse our full support resources or reach out to our team directly.