Gaia_Algolia
Descripción General
El módulo Gaia_Algolia personaliza y extiende la funcionalidad del módulo de búsqueda Algolia en Magento 2. Incluye modificaciones en la indexación de productos, configuración de índices, atributos personalizados, sincronización con Williams y optimización de la búsqueda para el ecosistema Gaia.
Features
Helper de Productos Personalizado
- Descripción: Personaliza el helper de productos de Algolia con funcionalidades específicas de Gaia.
- Tipo de modificación: Override de helper.
- Archivos del core afectados: Reemplaza
Algolia\AlgoliaSearch\Helper\Entity\ProductHelper. - Archivos del módulo:
Helper/Product.php
- Notas importantes:
- Extiende la funcionalidad base de indexación de productos.
Configuración Personalizada
- Descripción: Personaliza la configuración de Algolia con parámetros específicos de Gaia.
- Tipo de modificación: Override de helper de configuración.
- Archivos del core afectados: Reemplaza
Algolia\AlgoliaSearch\Helper\ConfigHelper. - Archivos del módulo:
Helper/Config.php
- Notas importantes:
- Permite configuración personalizada de parámetros de Algolia.
Indexador de Productos Personalizado
- Descripción: Personaliza el indexador de productos de Algolia.
- Tipo de modificación: Override de indexador.
- Archivos del core afectados: Reemplaza
Algolia\AlgoliaSearch\Model\Indexer\Product. - Archivos del módulo:
Model/Indexer/Product.php
- Notas importantes:
- Permite lógica personalizada en la indexación de productos.
Configurador de Índices Personalizado
- Descripción: Personaliza la configuración de índices de Algolia.
- Tipo de modificación: Plugin en configurador de índices.
- Archivos del core afectados: No modifica archivos core de Magento.
- Archivos del módulo:
Plugin/Model/IndicesConfiguratorPlugin.php
- Notas importantes:
- Permite personalizar la configuración de índices de búsqueda.
Atributos Personalizados
- Descripción: Implementa atributos personalizados para productos en Algolia.
- Tipo de modificación: Observer.
- Archivos del core afectados: No modifica archivos core de Magento.
- Archivos del módulo:
Observer/CustomAttributes.php
- Notas importantes:
- Se ejecuta después de crear objetos de producto para agregar atributos personalizados.
Configuración Personalizada de Índices
- Descripción: Personaliza la configuración de índices de productos.
- Tipo de modificación: Observer.
- Archivos del core afectados: No modifica archivos core de Magento.
- Archivos del módulo:
Observer/CustomSettings.php
- Notas importantes:
- Se ejecuta antes de establecer configuraciones de índices de productos.
Campos Adicionales en Colección
- Descripción: Agrega campos adicionales a la colección de productos de Algolia.
- Tipo de modificación: Observer.
- Archivos del core afectados: No modifica archivos core de Magento.
- Archivos del módulo:
Observer/AddFieldsToCollection.php
- Notas importantes:
- Se ejecuta después de construir la colección de productos.
Sincronización con Williams
- Descripción: Reindexa productos después de la sincronización con Williams.
- Tipo de modificación: Observer.
- Archivos del core afectados: No modifica archivos core de Magento.
- Archivos del módulo:
Observer/ReindexProductsAfterWilliamsSync.php
- Notas importantes:
- Se ejecuta cuando finaliza la sincronización de stock con Williams.
Datos Adicionales en Colección de Productos
- Descripción: Agrega datos adicionales a la colección de productos de Algolia.
- Tipo de modificación: Observer.
- Archivos del core afectados: No modifica archivos core de Magento.
- Archivos del módulo:
Observer/ProductCollectionAddAdditionalData.php
- Notas importantes:
- Permite agregar datos específicos a la colección de productos.
Overrides, Observers y Plugins Importantes
Preferences (Overrides)
Algolia\AlgoliaSearch\Helper\Entity\ProductHelper→Gaia\Algolia\Helper\Product- Descripción: Personaliza el helper de productos de Algolia.
Algolia\AlgoliaSearch\Helper\ConfigHelper→Gaia\Algolia\Helper\Config- Descripción: Personaliza la configuración de Algolia.
Algolia\AlgoliaSearch\Model\Indexer\Product→Gaia\Algolia\Model\Indexer\Product- Descripción: Personaliza el indexador de productos.
Observers
algolia_after_create_product_object→Gaia\Algolia\Observer\CustomAttributes- Descripción: Agrega atributos personalizados después de crear objetos de producto.
algolia_products_index_before_set_settings→Gaia\Algolia\Observer\CustomSettings- Descripción: Personaliza configuraciones antes de establecer índices de productos.
algolia_after_products_collection_build→Gaia\Algolia\Observer\AddFieldsToCollection- Descripción: Agrega campos adicionales después de construir colección de productos.
williams_stock_sync_finish→Gaia\Algolia\Observer\ReindexProductsAfterWilliamsSync- Descripción: Reindexa productos después de sincronización con Williams.
algolia_product_collection_add_additional_data→Gaia\Algolia\Observer\ProductCollectionAddAdditionalData- Descripción: Agrega datos adicionales a la colección de productos.
Plugins
Algolia\AlgoliaSearch\Model\IndicesConfiguratorgaia_totals: Plugin para personalizar configuración de índices
CLI Commands
Este módulo no define comandos CLI personalizados.
APIs
No expone endpoints REST o GraphQL propios, pero puede afectar el comportamiento de APIs existentes de Algolia.
Consideraciones para Mantenimiento
- El módulo es crítico para la funcionalidad de búsqueda y no debe desactivarse sin revisar dependencias.
- Depende de varios módulos:
Algolia_CustomAlgolia,Algolia_AlgoliaSearch,Magento_Theme,Magento_CatalogSearch. - Los observers se ejecutan en eventos críticos de indexación y deben ser eficientes.
- El observer de atributos personalizados es extenso (32KB) y puede afectar el rendimiento.
- La sincronización con Williams puede requerir reindexación masiva.
- Los overrides de helpers y indexadores pueden afectar la funcionalidad base de Algolia.
- Revisar compatibilidad con actualizaciones del módulo base de Algolia.
- La configuración personalizada de índices puede afectar la relevancia de búsquedas.
- Los atributos personalizados pueden aumentar el tamaño de los índices.