Header Ads Widget

Ticker

6/recent/ticker-posts

Agregar atributo que no es de producto a los documentos elásticos de Magento2

En este blog, aprenderemos cómo agregar campos personalizados a documentos de búsqueda elástica (productos). A veces es necesario cargar algunos datos que no son un atributo de producto o es un atributo de producto, pero no se pueden buscar ni filtrar en el servidor de búsqueda elástica, que luego se puede usar para buscar y filtrar productos en Magento.
Veamos cómo hacer eso:
En primer lugar, debe crear una clase que será el proveedor de los datos que desea indexar mientras se ejecuta el indexador de Magento:
Entonces, en la clase anterior, puede ver que he extendido esta clase "Magento \ AdvancedSearch \ Model \ Adapter \ DataMapper \ AdditionalFieldsProviderInterface" que se requiere para crear una clase de proveedor y también debe definir el método "getFields" que le dará el acceso de todos los productos y la identificación de la tienda.
Ahora tenemos que agregar esta clase en el archivo di.xml del módulo para que Magento pueda saber al momento de indexar agregar este campo:
Ahora ha informado a Magento que use su clase de proveedor para agregar su campo al índice y documento elásticos.
Para comprobar si su código funciona, simplemente abra esta URL en el navegador para conocer el nombre del índice actual:
http: // localhost: 9200 / _todos
En la URL anterior, en lugar de localhost, use el host de su servidor elástico y en lugar de 9200 use su puerto de servidor elástico. Al ejecutar la URL en el navegador, obtendrá el esquema del índice elástico para encontrar custom_field en eso y lo encontrará en asignaciones> claves de propiedades.


Gracias 🙂

Publicar un comentario

0 Comentarios