Gaia_SuperMenu
Descripción General
El módulo Gaia_SuperMenu implementa un menú avanzado y configurable para la tienda, permitiendo mostrar subcategorías, widgets personalizados y configuraciones visuales avanzadas tanto en frontend como en backend. Facilita la administración visual del menú principal y submenús, integrando lógica de negocio y presentación.
Features
Widgets y Bloques Personalizados
- Descripción: Permite la creación y gestión de widgets de menú y subcategorías, integrando lógica de negocio y presentación personalizada.
- Tipo de modificación: Bloques y templates personalizados.
- Archivos del core afectados: No modifica archivos core de Magento.
- Archivos del módulo:
Block/Supermenu.php,Block/Subcategories/SubcategoriesList.phpview/frontend/templates/widget/supermenu-top.phtml,supermenu-bottom.phtml,subcategories_list.phtml
- Notas importantes:
- Los widgets pueden ser configurados desde el backend y utilizados en diferentes posiciones del layout.
Configuración y Validación Avanzada
- Descripción: Permite configurar el menú desde el backend, validando y gestionando atributos de categoría y opciones visuales.
- Tipo de modificación: Modelos de configuración y validadores personalizados.
- Archivos del core afectados: No modifica archivos core.
- Archivos del módulo:
Model/Config/Backend/JsonValidator.php,Model/Config/Source/Options.php,Model/Config/Source/SelectJson.phpetc/widget.xml,etc/config.xml,etc/acl.xml
- Notas importantes:
- Incluye validadores de JSON y fuentes de opciones para campos de configuración.
Integración con GraphQL y Helpers
- Descripción: Permite obtener datos de menú y categorías mediante GraphQL y helpers utilitarios.
- Tipo de modificación: Modelos y helpers personalizados.
- Archivos del core afectados: No modifica archivos core.
- Archivos del módulo:
Model/GraphQlClient.php,Helper/Data.php,Helper/Url.php,Helper/UrlInterface.php
- Notas importantes:
- Facilita la integración con APIs y la obtención dinámica de datos para el menú.
Plugins y Extensiones
- Descripción: Modifica el comportamiento de widgets mediante plugins para extender o personalizar la lógica de renderizado.
- Tipo de modificación: Plugin.
- Archivos del core afectados: Puede interceptar widgets estándar de Magento.
- Archivos del módulo:
Plugin/Widget.php
- Notas importantes:
- Permite modificar la lógica de renderizado de widgets sin sobrescribir el core.
Administración de Imágenes y Categorías
- Descripción: Permite la gestión de imágenes y atributos personalizados para categorías desde el backend.
- Tipo de modificación: Controladores y parches de datos.
- Archivos del core afectados: No modifica archivos core.
- Archivos del módulo:
Controller/Adminhtml/Category/Save.php,Controller/Adminhtml/Category/Image/Upload.php,Controller/Adminhtml/Category/Thumb/Upload.phpSetup/Patch/Data/InsertCategoryAttributes.php,InsertCategoryAttributeAlias.php,InsertCategoryAttributeShortName.php
- Notas importantes:
- Los parches de datos agregan atributos personalizados a las categorías para su uso en el menú.
Estilos y Layouts Personalizados
- Descripción: Incluye estilos avanzados y layouts para la presentación del menú en frontend.
- Tipo de modificación: Archivos LESS, CSS y layouts XML.
- Archivos del core afectados: No modifica archivos core.
- Archivos del módulo:
view/frontend/web/css/source/_menu.less,view/frontend/layout/default_header.xml
- Notas importantes:
- Permite una personalización visual avanzada del menú principal y submenús.
CLI Commands
Este módulo no define comandos CLI personalizados.
APIs
No expone endpoints REST o GraphQL propios, pero facilita la integración mediante el modelo GraphQlClient y helpers.
Consideraciones para Mantenimiento
- El módulo depende de atributos personalizados en categorías, agregados mediante parches de datos.
- Los widgets y bloques pueden ser utilizados en diferentes layouts y requieren pruebas visuales tras actualizaciones.
- La lógica de validación y configuración puede requerir ajustes si se agregan nuevos atributos o se modifica la estructura de categorías.
- No modifica archivos core, pero su desactivación puede afectar la navegación principal de la tienda.