即時搜尋目錄未同步

本文針對Adobe Commerce問題提供解決方案,解決您在使用Live Search擴充功能時,目錄資料無法正確同步的問題。

受影響的產品和版本

  • Adobe Commerce 2.4.x (已安裝Live Search擴充功能)

問題

您的目錄資料未正確同步,或已新增產品,但未顯示在搜尋結果中。

要再現的步驟

  1. 依照使用者檔案之安裝Live Search >設定API金鑰中的說明,設定並連線您Adobe Commerce執行個體的Live Search。
  2. 30分鐘後,依照使用者檔案中的安裝即時搜尋>驗證匯出說明驗證匯出的目錄資料。
  3. 30分鐘後,依照使用者檔案中的安裝即時搜尋>測試連線所述測試連線。

  1. 將新產品新增至目錄。
  2. 在執行時間Magento索引器+ cron後的15-20分鐘內,嘗試使用產品名稱或其他可搜尋屬性執行搜尋查詢,以將資料同步到後端服務。

預期結果

  • 可驗證匯出的目錄資料
  • 連線成功
  • 新產品會出現在搜尋結果中。

實際結果

無法驗證匯出的目錄,而且/或者因為API金鑰已變更,所以未建立連線。

解決方案

您有數個動作可以嘗試並修正目錄同步問題。

等待套用變更

設定並連線後,可能要花30分鐘以上的時間建立ES (Elasticsearch)中的索引並傳回搜尋結果。 後續的一次性產品更新預計會在幾分鐘內編列索引。

同步特定SKU的產品資料

如果特定SKU的產品資料未正確同步,請執行以下操作:

  1. 使用下列SQL查詢,並確認您在feed_data資料行中有預期的資料。 另外,記下modified_at時間戳記。

    code language-sql
    select * from catalog_data_exporter_products where sku = '<your_sku>' and store_view_code = '<your_ store_view_code>';
    
  2. 如果您沒有看到正確的資料,請嘗試使用下列命令重新索引,並在步驟1重新執行SQL查詢以驗證資料:

    code language-bash
    bin/magento indexer:reindex catalog_data_exporter_products
    
  3. 如果您還是沒有看到正確的資料,請建立支援票證

檢查上次產品匯出的時間戳記

  1. 如果您在catalog_data_exporter_products中看到正確的資料,請使用下列SQL查詢來檢查上次匯出的時間戳記。 它應該在modified_at時間戳記之後:

    code language-sql
    select * from flag where flag_code = 'products-feed-version';
    
  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 catalog_data_exporter_product_attributes 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 catalog_data_exporter_product_attributes
    
  3. 如果您還是沒有看到正確的資料,請建立支援票證

檢查上次產品屬性匯出的時間戳記

如果您在catalog_data_exporter_product_attributes中看到正確的資料:

  1. 使用下列SQL查詢來檢查上次匯出的時間戳記。 它應在modified_at時間戳記之後。

    code language-sql
    select * from flag where flag_code = 'product-attributes-feed-version';
    
  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