Saltar al contenido principal

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\ProductHelperGaia\Algolia\Helper\Product
    • Descripción: Personaliza el helper de productos de Algolia.
  • Algolia\AlgoliaSearch\Helper\ConfigHelperGaia\Algolia\Helper\Config
    • Descripción: Personaliza la configuración de Algolia.
  • Algolia\AlgoliaSearch\Model\Indexer\ProductGaia\Algolia\Model\Indexer\Product
    • Descripción: Personaliza el indexador de productos.

Observers

  • algolia_after_create_product_objectGaia\Algolia\Observer\CustomAttributes
    • Descripción: Agrega atributos personalizados después de crear objetos de producto.
  • algolia_products_index_before_set_settingsGaia\Algolia\Observer\CustomSettings
    • Descripción: Personaliza configuraciones antes de establecer índices de productos.
  • algolia_after_products_collection_buildGaia\Algolia\Observer\AddFieldsToCollection
    • Descripción: Agrega campos adicionales después de construir colección de productos.
  • williams_stock_sync_finishGaia\Algolia\Observer\ReindexProductsAfterWilliamsSync
    • Descripción: Reindexa productos después de sincronización con Williams.
  • algolia_product_collection_add_additional_dataGaia\Algolia\Observer\ProductCollectionAddAdditionalData
    • Descripción: Agrega datos adicionales a la colección de productos.

Plugins

  • Algolia\AlgoliaSearch\Model\IndicesConfigurator
    • gaia_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.