实时搜索目录未同步

本文为使用Live Search扩展时目录数据无法正确同步的Adobe Commerce问题提供了解决方案。

受影响的产品和版本

  • 已安装Live Search扩展的Adobe Commerce 2.4.x

问题

您的目录数据未正确同步,或者已添加新产品,但未显示在搜索结果中。

NOTE
从Live Search版本4.2.1开始,表名catalog_data_exporter_productscatalog_data_exporter_product_attributes现在称为cde_products_feedcde_product_attributes_feed。对于版本低于4.2.1的商家,在旧表名称catalog_data_exporter_productscatalog_data_exporter_product_attributes中查找数据。

重现步骤

  1. 按照用户文档中的安装Live Search >配置API密钥中所述,为Adobe Commerce实例配置并连接Live Search。
  2. 30分钟后,按照用户文档中的安装Live Search >验证导出中的说明验证导出的目录数据。
  3. 30分钟后,按照用户文档中的安装Live Search >测试连接中的说明测试连接。

  1. 向目录中添加新产品。
  2. 尝试在运行Magento索引器+ cron后的15-20分钟后使用产品名称或其他可搜索属性运行搜索查询,以将数据同步到后端服务。

预期的结果

  • 可以验证导出的目录数据
  • 连接成功
  • 新产品会显示在搜索结果中。

实际结果

无法验证导出的目录和/或连接未建立,因为API密钥已更改。

解决方案

您可以通过多种方法来尝试并修复目录同步问题。

等待应用更改

配置并连接后,可能需要超过30分钟才能在ES(Elasticsearch)中创建索引并返回搜索结果。 后续的一次性产品更新预计会在几分钟内编制索引。

同步特定SKU的产品数据

如果特定SKU的产品数据未正确同步,请执行以下操作:

  1. 使用以下SQL查询并验证您是否在feed_data列中有所需数据。 另外,记下modified_at时间戳。

    code language-sql
    select * from cde_products_feed where sku = '<your_sku>' and store_view_code = '<your_ store_view_code>';
    
  2. 如果看不到正确的数据,请尝试使用以下命令重新编入索引,并在步骤1中重新运行SQL查询以验证数据:

    code language-bash
    bin/magento indexer:reindex cde_products_feed
    
  3. 如果仍看不到正确的数据,请创建支持票证

检查上次产品导出的时间戳

  1. 如果您在cde_products_feed中看到正确的数据,请使用以下SQL查询检查上次导出的时间戳。 它应在modified_at时间戳之后:

    code language-sql
    select * from scopes_website_data_exporter;
    
  2. 如果时间戳较旧,则可以等待下一个cron运行,也可以使用以下命令自行触发该时间戳:

    code language-bash
    bin/magento cron:run --group=saas_data_exporter
    
  3. 等待<>时间(增量更新的时间)。 如果您仍未看到数据,请创建支持票证

同步特定的属性代码

如果特定属性代码的产品属性数据未正确同步,请执行以下操作:

  1. 使用以下SQL查询并验证您是否在feed_data列中有所需数据。 另外,记下modified_at时间戳。

    code language-sql
    select * from cde_product_attributes_feed where json_extract(feed_data, '$.attributeCode') = '<your_attribute_code>' and store_view_code = '<your_ store_view_code>';
    
  2. 如果看不到正确的数据,请使用以下命令重新编制索引,然后在步骤1中重新运行SQL查询以验证数据。

    code language-bash
    bin/magento indexer:reindex cde_product_attributes_feed
    
  3. 如果仍看不到正确的数据,请创建支持票证

检查上次产品属性导出的时间戳

如果您在cde_product_attributes_feed中看到了正确的数据:

  1. 使用以下SQL查询检查上次导出的时间戳。 它应在modified_at时间戳之后。

    code language-sql
    select * from scopes_website_data_exporter;
    
  2. 如果时间戳较旧,则可以等待下一个cron运行,也可以使用以下命令自行触发该时间戳:

    code language-bash
    bin/magento cron:run --group=saas_data_exporter
    
  3. 等待15-20分钟(增量更新的时间)。 如果您仍未看到数据,请创建支持票证

在API配置更改后同步

(已知问题)如果您更改了API配置,从而导致数据空间ID发生更改,并且发现目录更改不再同步,请运行以下命令:

bin/magento saas:resync --feed products
bin/magento saas:resync --feed productattributes

相关阅读

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a