Analisando propostas

Integración de Campo de Personalización Universal en Prestashop 8.1 que este en todos los productos

Publicado em 14 de Junho de 2025 dias na TI e Programação

Sobre este projeto

Aberto

actualmente ya tengo uno que solo se activa desde el back ofice de prestashop y necesito que siempre este activo en los productos que ya existen y el los de nueva creacion

Contexto Geral do Projeto

Mostrar un campo de personalización de texto en todos los productos, incluso en aquellos donde no se haya activado manualmente desde el BackOffice. El campo debe: Guardarse como el sistema nativo de PrestaShop (customization) Aparecer en carrito, pedido y BackOffice Ser compatible con PrestaShop 8.1 y el tema Transformer hemos intentando realizarlo con chatgpt pero da muchos errores ,adjunto propuesta Informe Técnico para el Informático - Integración de Campo de Personalización Universal en PrestaShop 8.1 🔧 Objetivo Mostrar un campo de personalización de texto en todos los productos, incluso en aquellos donde no se haya activado manualmente desde el BackOffice. El campo debe: Guardarse como el sistema nativo de PrestaShop (customization) Aparecer en carrito, pedido y BackOffice Ser compatible con PrestaShop 8.1 y el tema Transformer ⚠️ Problemas detectados durante el intento con módulo externo Error 500 al llamar a un método obsoleto: Fatal error: Call to undefined method CustomizationField::getCustomizationFields() ❌ El método ya no existe en PS 8.1, provocando caída total de la página. Warnings por use incorrecto en PS 8.1: Warning: The use statement with non-compound name 'Context' has no effect ❌ El namespace de estas clases ha cambiado. Usar \Context, \Tools, \Product directamente soluciona esto. No aparece el campo en productos sin personalización: Si customizable=0 y no hay entrada en ps_customization_field, el sistema de PrestaShop omite todo el flujo de personalización. Resultado: el campo no aparece, y en algunos casos el botón "Añadir al carrito" desaparece también. Riesgo de corrupción del flujo nativo: Forzar personalización por módulo sin actualizar base de datos puede dejar datos huérfanos o inconsistentes. 💡 Solución recomendada (estable y profesional) 1. Crear un campo de personalización común Insertar una entrada en ps_customization_field con: type = 1 (campo de texto) required = 0 is_module = 1 (si se quiere controlar por módulo) 2. Asignar ese campo a todos los productos existentes Insertar en ps_customization_field_product con: id_customization_field = id del campo creado id_product = id del producto 3. Modificar ProductController (o crear módulo) para asignar automáticamente el campo a los nuevos productos 🔍 Recomendaciones finales Realizar todas las pruebas en un entorno de staging Hacer backup completo antes de modificar la base de datos Evitar módulos que simulan personalización sin soporte de BD Confirmar que los hooks de submitCustomizedData y CartController funcionan sin override ✅ El cliente ya dispone de los archivos .tpl y estructura del módulo inicial. Se recomienda rehacer el trabajo usando la lógica anterior pero respaldado por las tablas oficiales de PrestaShop.

Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Bug ou alteração pequena
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho especificações
Disponibilidade requerida Conforme necessário
Integrações de API Outros (Outras APIs)
Funções necessárias Desenvolvedor

Prazo de Entrega: Não estabelecido

Habilidades necessárias

Outro projetos publicados por J. V.