Configurado correctamente con Live Search
Adobe Commerce Live Search y Catalog Service trabajan juntos para proporcionar una solución de búsqueda eficaz, relevante e intuitiva que permita a sus clientes encontrar rápidamente lo que necesitan exactamente. Específicamente, Catalog Service muestra los datos del catálogo para servicios SaaS, como Live Search para usar.
Este artículo proporciona instrucciones paso a paso para implementar Live Search con Catalog Service.
Público
Este artículo está dirigido al desarrollador o integrador de sistemas de su equipo, responsable de instalar y configurar la instancia de Adobe Commerce.
Requisitos
- Adobe Commerce 2.4.4+
- PHP 8.1/8.2/8.3
- Composer
Plataformas compatibles
- Adobe Commerce en la nube (ECE) : 2.4.4+
- Adobe Commerce local (EE) : 2.4.4+
Resumen de flujo de trabajo
En un nivel superior, la incorporación de Live Search requiere que:
1. Instale la extensión Live Search
Live Search está instalado como una extensión desde Adobe Marketplace hasta Composer. Después de instalar y configurar Live Search, el Adobe Commerce comienza a compartir los datos de la búsqueda y del catálogo con los servicios SaaS. En este punto, los usuarios de Admin pueden configurar, personalizar y administrar las facetas de búsqueda, los sinónimos y las reglas de comercialización.
-
Confirme que se están ejecutando trabajos cron y indexadores.
note important IMPORTANT Debido al anuncio de fin de soporte de Elasticsearch 7 para agosto de 2023, se recomienda que todos los clientes de Adobe Commerce migren al motor de búsqueda OpenSearch 2.x. Para obtener información sobre cómo migrar el motor de búsqueda durante una actualización de producto, consulte Migración a OpenSearch en la Guía de actualización. -
Descargue el paquete
live-search
de Adobe Marketplace. -
Ejecute lo siguiente desde la línea de comandos:
code language-bash composer require magento/live-search
Si agrega la extensión Live Search a una instalación de new Adobe Commerce, ejecute lo siguiente para deshabilitar OpenSearch y los módulos relacionados e instale Live Search. A continuación, continúe con el paso 4.
code language-bash bin/magento module:disable Magento_Elasticsearch Magento_Elasticsearch7 Magento_OpenSearch Magento_ElasticsearchCatalogPermissions Magento_InventoryElasticsearch Magento_ElasticsearchCatalogPermissionsGraphQl
Si está agregando la extensión Live Search a una instalación de Adobe Commerce existente, ejecute lo siguiente para deshabilitar temporalmente los módulos Live Search que sirven para los resultados de búsqueda de la tienda. A continuación, continúe con el paso 4:
code language-bash bin/magento module:disable Magento_LiveSearchAdapter Magento_LiveSearchStorefrontPopover Magento_LiveSearchProductListing
Elasticsearch continúa administrando solicitudes de búsqueda desde la tienda mientras el servicio Live Search sincroniza los datos del catálogo e indexa los productos en segundo plano.
-
Ejecute lo siguiente:
code language-bash bin/magento setup:upgrade
-
Compruebe que los siguientes indexadores estén configurados en "Actualizar según lo programado":
- Fuente de productos
- Fuente de variante del producto
- Fuente de atributos de catálogo
- Fuente de precios de productos
- Fuente de datos del sitio web Ámbitos
- Fuente de datos de grupos de clientes ámbitos
- Fuente de categorías
- Fuente de permisos de categoría
-
Si va a instalar Live Search en una nueva instancia de Commerce, ha terminado y puede saltar a 2. Sección Configurar claves API. Si va a instalar Live Search en una instancia de Commerce existente, continúe con el siguiente paso.
-
Ejecute los siguientes comandos para habilitar la extensión Live Search, deshabilitar OpenSearch y ejecutar
setup
.code language-bash bin/magento module:enable Magento_LiveSearchAdapter Magento_LiveSearchStorefrontPopover Magento_LiveSearchProductListing
code language-bash bin/magento module:disable Magento_Elasticsearch Magento_Elasticsearch6 Magento_Elasticsearch7 Magento_ElasticsearchCatalogPermissions Magento_InventoryElasticsearch Magento_ElasticsearchCatalogPermissionsGraphQl
code language-bash bin/magento setup:upgrade
2. Configurar las claves API
La clave de API de Adobe Commerce y su clave privada asociada son necesarias para conectar Live Search a una instalación de Adobe Commerce. La clave de API se genera y se mantiene en la cuenta del titular de la licencia Commerce, que puede compartirla con el desarrollador o el integrador de sistemas. A continuación, el desarrollador puede crear y administrar los espacios de datos SaaS en nombre del titular de la licencia. Si ya tiene un conjunto de claves API, no es necesario que las vuelva a generar.
Aprenda a configurar las claves API en el artículo Conector de servicios de Commerce.
3. Sincronizar los datos del catálogo synchronize-catalog-data
Live Search mueve los datos del catálogo a la infraestructura SaaS de Adobe. Los datos se indexan y los resultados de búsqueda se envían desde este índice directamente a la tienda. Según el tamaño y la complejidad, la indexación puede tardar entre 30 minutos y un par de horas.
Para comenzar la sincronización inicial de los datos del catálogo con los servicios SaaS, ejecute los siguientes comandos en este orden:
bin/magento saas:resync --feed productattributes
bin/magento saas:resync --feed products
bin/magento saas:resync --feed scopesCustomerGroup
bin/magento saas:resync --feed scopesWebsite
bin/magento saas:resync --feed prices
bin/magento saas:resync --feed productoverrides
bin/magento saas:resync --feed variants
bin/magento saas:resync --feed categories
bin/magento saas:resync --feed categoryPermissions
Al ejecutar estos comandos, comienza la sincronización inicial de los datos del catálogo con los servicios SaaS.
cron
para sincronizar los datos con los servicios SaaS.Monitorización del progreso de sincronización
Puede ver los datos que se sincronizan y comparten mediante Panel de administración de datos. Este tablero proporciona información valiosa sobre la disponibilidad de los datos de productos para su tienda, lo que garantiza que se puedan mostrar rápidamente a sus compradores.
También puede ejecutar comandos de sincronización y solucionar problemas del proceso de sincronización mediante la CLI de Commerce y los registros de extensión de exportación de datos.
Futuras actualizaciones de productos
Después de la sincronización inicial, las actualizaciones incrementales de productos pueden tardar hasta 15 minutos en estar disponibles para la búsqueda de tiendas. Para obtener más información, consulte Indexación - Actualizaciones de productos de streaming.
4. Compruebe que los datos se han exportado verify-export
Para comprobar que los datos del catálogo se han exportado desde la instancia de Adobe Commerce y que están sincronizados para Live Search, tiene un par de opciones:
-
Busque entradas en las tablas siguientes:
catalog_data_exporter_products
catalog_data_exporter_product_attributes
-
Use GraphQL playground con la consulta predeterminada para comprobar lo siguiente:
- El recuento de productos devuelto está cerca de lo que se espera en la vista de la tienda.
- Se devuelven las facetas.
Para obtener ayuda adicional, consulte Live Search catálogo no sincronizado en la Base de conocimiento de soporte técnico.
5. Configurar los datos
Configurar correctamente los datos del producto garantiza buenos resultados de búsqueda para los clientes. En esta sección, se habilitan los widgets de la lista de productos y se asignan categorías.
Activar widgets de lista de productos
Al instalar Live Search 4.0.0+, los widgets de lista de productos se habilitan de forma predeterminada. Cuando los widgets están habilitados, se utiliza un componente de interfaz de usuario diferente para la página de resultados de búsqueda y la página de exploración de categorías Lista de productos. Este componente de interfaz de usuario realiza llamadas directas a la API del servicio de catálogo, lo que resulta en tiempos de respuesta más rápidos.
Si tiene una versión de Live Search anterior a la 4.0.0 o posterior, debe habilitar manualmente el widget de lista de productos.
-
Desde Admin, vaya a Stores > Settings>Configuration.
-
En Live Search, seleccione Storefront Features.
-
Establezca Enable Product Listing Widgets en
Yes
.
Al cambiar esta configuración, aparece el mensaje Page cache is invalidated
. Debe vaciar la caché del Magento para guardar el cambio.
-
Para tener acceso a la página Administración de caché, siga uno de estos procedimientos:
- Haga clic en el vínculo Cache Management en el mensaje situado encima del área de trabajo.
- En la barra lateral Admin, vaya a System > Tools>Cache Management.
-
Seleccione la configuración Cache Type y haga clic en Flush Magento Cache.
Los cambios en la tienda son inmediatos después de vaciar la caché.
Asignar categorías
Los productos devueltos en Live Search deben asignarse a una categoría. En Luma, por ejemplo, los productos se clasifican en categorías como "Hombres", "Mujeres" y "Equipos". También se configuran subcategorías para "Tops", "Bottom" y "Watches". Esto permite una mejor granularidad al filtrar.
6. Compruebe la conexión test-connection
Con los datos del catálogo ahora en SaaS, pruebe para asegurarse de que los datos del producto se devuelvan en los siguientes casos:
- La casilla Search devuelve los resultados correctamente
- La exploración de categorías devuelve los resultados correctamente
- Las facetas están disponibles como filtros en las páginas de resultados de búsqueda
Si todo funciona correctamente, Live Search está instalado, conectado y listo para usarse.
Si encuentra problemas en la tienda, compruebe en el archivo var/log/system.log
si hay errores de comunicación de API o errores en el lado de los servicios.
Para permitir que Live Search pase a través de un firewall, agregue commerce.adobe.io
a la lista de permitidos.
7. Personalizar para tu tienda
Ha instalado la extensión Live Search, ha sincronizado, validado y configurado los datos. Ahora, debe asegurarse de que los widgets de Live Search se ajusten al aspecto y la presentación de su tienda.
Puede aplicar estilo a los widgets de ventana emergente y PLP definiendo reglas CSS personalizadas según sea necesario. Consulte Elementos emergentes de estilo y Widget de la página de listado de productos.
Si desea ampliar la funcionalidad de los widgets, el código fuente de cada uno está disponible en un repositorio público.
En esta situación, puede personalizar JavaScript para sus propias necesidades y, a continuación, alojar su código personalizado en su CDN. Este script personalizado se comunica con el servicio Live Search y devuelve los resultados como de costumbre, lo que le permite controlar la funcionalidad del widget.
Actualizando Live Search update
Antes de actualizar Live Search, ejecute lo siguiente desde la línea de comandos para comprobar la versión de Live Search instalada:
composer show magento/module-live-search | grep version
Para actualizar Live Search, ejecute lo siguiente desde la línea de comandos:
composer update magento/live-search --with-dependencies
Para actualizar a una versión principal como de la 3.1.1 a la 4.0.0, edite el archivo raíz Composer .json
del proyecto de la siguiente manera:
-
Si su versión de
magento/live-search
instalada actualmente es3.1.1
o inferior y está actualizando a la versión4.0.0
o superior, ejecute el siguiente comando antes de la actualización:code language-bash bin/magento module:enable Magento_AdvancedSearch
Para obtener información acerca de la versión de
magento/live-search
instalada actualmente, ejecute el siguiente comando:code language-bash composer show magento/live-search
-
Abra el archivo raíz
composer.json
y busquemagento/live-search
. -
En la sección
require
, actualice el número de versión de la siguiente manera:code language-json "require": { ... "magento/live-search": "^4.0", ... }
-
Guardar
composer.json
. A continuación, ejecute lo siguiente desde la línea de comandos:code language-bash composer update magento/live-search --with-dependencies
Desinstalando Live Search uninstall
Para desinstalar Live Search, consulte Desinstalar módulos.
Live Search paquetes packages
La extensión Live Search consta de los siguientes paquetes:
module-live-search
module-live-search-adapter
- Examen de categorías - Enruta las solicitudes desde la tienda navegación superior al servicio de búsqueda.
- Búsqueda global: enruta las solicitudes desde el cuadro de búsqueda rápida en la parte superior derecha de la tienda al servicio Live Search.
module-live-search-storefront-popover
Dependencias de Live Search dependencies
Composer captura las siguientes dependencias Live Search.
magento/module-saas-catalog
magento/module-saas-category
magento/module-saas-category-permissions
magento/module-saas-product-override
magento/module-saas-product-variant
magento/module-saas-price
magento/module-saas-scopes
magento/module-bundle-product-data-exporter
magento/module-catalog-inventory-data-exporter
magento/module-catalog-url-rewrite-data-exporter
magento/module-configurable-product-data-exporter
magento/module-parent-product-data-exporter
magento/module-gift-card-product-data-exporter
magento/module-bundle-product-override-data-exporter
data-services
services-id
Conceptos avanzados
Las secciones siguientes proporcionan temas más avanzados al utilizar Live Search y Catalog Service.
Extremo
Live Search se comunica a través del extremo en https://catalog-service.adobe.io/graphql
.
Como Live Search no tiene acceso a la base de datos de productos completa, Live Search GraphQL y Commerce Core GraphQL no tendrán paridad completa.
Se recomienda llamar a las API de SaaS directamente, específicamente al extremo del servicio de catálogo.
- Obtenga rendimiento y reduzca la carga del procesador omitiendo el proceso de Graphql/base de datos de Commerce
- Aproveche la federación Catalog Service para llamar a Live Search, Catalog Service y Product Recommendations desde un único extremo.
En algunos casos de uso, es mejor llamar a Catalog Service para obtener detalles del producto y casos similares. Consulte refineProduct para obtener más información.
Si tiene una implementación personalizada sin encabezado, consulte las implementaciones de referencia de Live Search:
AEM CIF Si no utiliza los componentes predeterminados, como el adaptador de búsqueda o los widgets en Luma, o los widgets de la, los eventos (datos del flujo de navegación que alimentan a Adobe Sensei para las métricas de rendimiento y comercialización inteligentes) no funcionarán de forma predeterminada y requieren desarrollo personalizado para implementar eventos sin encabezado.
La última versión de Live Search ya usa Catalog Service.
Compatibilidad de idiomas
Live Search widgets admiten los siguientes idiomas:
Si el widget detecta que la configuración del idioma de administración de Commerce (Tiendas > Configuración > Configuración > General > Opciones de país) coincide con un idioma compatible, el valor predeterminado será ese idioma. De lo contrario, los widgets se muestran en inglés de forma predeterminada.
Los administradores también pueden establecer el idioma de índice de búsqueda para garantizar mejores resultados de búsqueda.
Repositorio de código Widget
El widget de página de lista de productos y el widget de campo de Live Search están disponibles para su descarga en el repositorio de github.
Esto permite a los desarrolladores personalizar completamente la funcionalidad y el estilo. Estos usuarios alojan el código ellos mismos sin dejar de aprovechar el servicio Live Search.
Extensión de Data Export
Una vez habilitada la Live Search, la extensión de exportación de datos sincroniza los datos de Commerce entre la aplicación de Commerce y Live Search. Este proceso garantiza que los datos de Commerce más actuales estén disponibles en la tienda. En Admin, puede comprobar el estado de la sincronización mediante el panel de control de Data Management. Puede administrar y solucionar problemas del proceso de exportación de datos mediante la CLI de Commerce y los registros. Para obtener más información, consulte la Guía de exportación de datos.
Inventory management
Live Search admite las funciones de Inventory management en Commerce (anteriormente conocido como Multi-Source Inventory o MSI). Para habilitar la compatibilidad total, debe actualizar el módulo de dependencia commerce-data-export
a la versión 102.2.0+.
Live Search devuelve un valor booleano que indica si un producto está disponible en Inventory management, pero no contiene información sobre el origen que tiene las existencias.
Indexador de precios
Los clientes de Live Search pueden usar el indexador de precios SaaS, que ofrece actualizaciones de precios más rápidas y tiempo de sincronización.
Tarifa soportada
Los widgets de Live Search admiten la mayoría de los tipos de precio admitidos por Adobe Commerce, pero no todos.
Actualmente, se admiten precios básicos. Los precios avanzados que no son compatibles son:
- Coste
- Precio Mínimo Anunciado
Consulte Malla de API para cálculos de precios más complejos.
El formato de precio admite la configuración regional en la instancia de Commerce: Tiendas > Configuración > Configuración > General > General > Opciones locales > Configuración regional.
Compatibilidad con tienda sin encabezado
Opcionalmente, es posible que tenga que instalar el módulo module-data-services-graphql
que expande la cobertura de GraphQL existente de la aplicación para incluir los campos necesarios para la recopilación de datos de comportamiento de la tienda.
composer require magento/module-data-services-graphql
Este módulo agrega contextos adicionales a las consultas de GraphQL:
dataServicesStorefrontInstanceContext
dataServicesMagentoExtensionContext
dataServicesStoreConfigurationContext
Compatibilidad con B2B
Live Search admite funcionalidad B2B con limitaciones adicionales.
soporte de PWA
Live Search funciona con el PWA Studio, pero los usuarios pueden ver pequeñas diferencias en comparación con otras implementaciones de Commerce. La funcionalidad básica, como la página de búsqueda y la lista de productos, funciona en Venia, pero es posible que algunas permutaciones de Graphql no funcionen correctamente. También puede haber diferencias de rendimiento.
- La implementación actual del PWA Live Search requiere más tiempo de procesamiento para devolver resultados de búsqueda que Live Search con la tienda nativa de Commerce.
- Live Search en el PWA no admite control de eventos. Como resultado, los informes de búsqueda y la comercialización inteligente funcionarán.
- El filtrado directo en
description
,name
,short_description
no es compatible con GraphQL cuando se usa con PWA, pero se devuelve con un filtro más general.
Para usar Live Search con el PWA Studio, los integradores también deben:
-
Instalar livessearch-storefront-utils.
-
Establezca
environmentId
en el objetostoreDetails
.code language-javascript const storeDetails: StoreDetailsProps = { environmentId: <Storefront_ID>, websiteCode: "base", storeCode: "main_website_store", storeViewCode: "default", searchUnitId: searchUnitId, config: { minQueryLength: 5, pageSize: 8, currencySymbol: "$", }, };
Cookies
Live Search recopila datos de interacción del usuario como parte de su funcionalidad base y se utilizan cookies para almacenar estos datos. Al recopilar cualquier información de usuario, el usuario debe aceptar almacenar cookies. Live Search y Product Recommendations comparten el flujo de datos y, por lo tanto, el mismo mecanismo de cookies. Obtenga más información al respecto en Controlar restricciones de cookies.