Download the PHP package aligent/magento2-fredhopper-indexer without Composer
On this page you can find all versions of the php package aligent/magento2-fredhopper-indexer. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download aligent/magento2-fredhopper-indexer
More information about aligent/magento2-fredhopper-indexer
Files in aligent/magento2-fredhopper-indexer
Package magento2-fredhopper-indexer
Short Description Index and push data from Magento to Fredhopper
License GPL-3.0-only
Informations about the package magento2-fredhopper-indexer
Aligent Fredhopper Indexer
Overview
This package provides indexing of product data, as well as the subsequent exporting of that data to Fredhopper, a merchandising platform.
Installation
This package provides 3 related modules, and can be installed via composer:
Architecture
- New database table,
fredhopper_product_data_index
- Stores attribute data for both products and variants in JSON format
- Associated new database table,
fredhopper_changelog
- Keeps track of which products have been added, updated or deleted from the index. This allows for incremental exports.
- New
fredhopper
indexer, responsible for indexing the required product data. - New
Export
entity, which allows for tracking of exports to Fredhopper. Information such as the number of products added/updated/deleted, as well as status is maintained. - 8 new cron jobs for generating and maintaining exports.
fredhopper_full_export
- Generates a full export of the current attribute data for all products/variants. This will also include meta information about attributes.fredhopper_incremental_export
- Generates an export of product/variants that have changed since the last data set was exported.fredhopper_suggest_export
- Generates an export for data to be used in 'instant search' functionality.fredhopper_upload_export
- Uploads any waiting export to Fredhopperfredhopper_trigger_export
- Triggers an uploaded export to be loaded into Fredhopperfredhopper_invalidate_exports
- Marks any exports that have not been uploaded, and been superseded by another export as invalidfredhopper_update_data_status
- Checks and updates the status of exports based on information returned from Fredhopper.fredhopper_clean_exports
- Removes exports older than a configured age (default 3 days)
Configuration
This module provides a number of configurable settings for controlling which data is sent to Fredhopper and in what format:
- Use Variant Products?
- Should variant products be sent separately from their parent, or will their data be aggregated and sent with the parent instead?
- Product-Level Attributes
- Which attributes are sent at the product level, the attribute type, and if site variants are to be appended.
- Only attributes meeting certain criteria (e.g. searchable, visible in front-end, etc.) will be able to be selected.
- Which attributes are sent at the product level, the attribute type, and if site variants are to be appended.
- Variant-Level Attributes
- Which attributes are either sent at the variant level (if using variant products) or aggregated to the parent product.
- Attribute name mapping
- Maps Magento attribute codes to Fredhopper attribute ids
- Allowed/Disallowed Search Terms
- Force or prevent certain search results in instant search functionality.
- Cron Schedules
- Change schedule of each cron job that generates an export if desired.
Customisation
There are a number of customisation points in the module, allowing for data to be added/modified.
-
Additional Fields Provider
- A virtual type,
additionalFieldsProviderForFredhopper
, is provided with a number of common fields. Additional classes implementing\Magento\AdvancedSearch\Model\Adapter\DataMapper\AdditionalFieldsProviderInterface
can be added as needed.
- A virtual type,
- Document Pre/Post-Processors
\Aligent\FredhopperIndexer\Model\DataHandler
class has 2 arguments,documentPreProcessors
anddocumentPostProcessors
, which handle an array of classes implementing\Aligent\FredhopperIndexer\Api\Indexer\Data\DocumentProcessorInterface
- These will be run before and after "processing" of documents as a whole (i.e. after all attribute information has been added). As such, this is a good place to handle any custom aggregation or functionality relating to the product as a whole (as opposed to individual attributes).
-
Meta
- Custom attributes added via code will need to be added to the meta information that is sent to Fredhopper. This is done by adding to the
customAttributeData
argument of the\Aligent\FredhopperCommon\Model\Config\CustomAttributeConfig
class:
- Custom attributes added via code will need to be added to the meta information that is sent to Fredhopper. This is done by adding to the
-
Custom Suggest Data
- The
\Aligent\FredhopperExport\Model\GenerateSuggestExport
class provides thefileGenerators
argument by which custom data feeds can be added to the "suggest" export.- Each class added to the array must implement
\Aligent\FredhopperExport\Api\FileGeneratorInterface
- Each class added to the array must implement
- The
- Export Validation
- The
\Aligent\FredhopperExport\Model\UploadExport
class provides thevalidators
argument by which any pre-export validation can be added.- Each class added to the array must implement
\Aligent\FredhopperExport\Api\PreExportValidatorInterface
- Each class added to the array must implement
- The
Administration
A view of exports is provided in the Adobe Commerce admin area. This view lists all generated exports, including information such as the number of added, updated and deleted products, as well as the export's current status in the system.
All versions of magento2-fredhopper-indexer with dependencies
aligent/magento2-category-selector Version *
magento/magento-composer-installer Version *
magento/module-advanced-search Version *
magento/module-catalog Version *
magento/module-catalog-search Version *
magento/module-config Version *
magento/module-configurable-product Version *
magento/module-eav Version *
magento/module-elasticsearch Version *
magento/module-store Version *
ext-zip Version *