我正在开发一个使用 Umbraco CMS 的 Web 项目,我们正在使用站点搜索功能在我们的站点上查找产品,它运行良好,当我将新产品添加到商业服务器 2009 R2 时,它被列在相应的类别,但这些新添加的产品在站点搜索中不可用。我们使用 Adobe Search & Promotion 来索引网站,使用商业服务器搜索技术来搜索产品。对此有任何线索吗?
提前致谢!戈文德
我正在开发一个使用 Umbraco CMS 的 Web 项目,我们正在使用站点搜索功能在我们的站点上查找产品,它运行良好,当我将新产品添加到商业服务器 2009 R2 时,它被列在相应的类别,但这些新添加的产品在站点搜索中不可用。我们使用 Adobe Search & Promotion 来索引网站,使用商业服务器搜索技术来搜索产品。对此有任何线索吗?
提前致谢!戈文德
出于讨论的目的,假设您的 Microsoft Commerce Server 站点名称是“GovinSite*”,并且您有一个名为“GovinCatalog”的Microsoft Commerce Server 产品目录
现在让我根据您的初始问题陈述两个假设:
假设 1:我将您的陈述解释为“当我将新产品添加到 Commerce Server 2009 R2 时,它被列在相应的类别中”,描述您使用“ Microsoft Commerce Server Catalog Manager ”瘦客户端手动添加产品的行为工具,然后在您通过目录管理器中的瘦客户端界面添加它们后,它们就会显示在界面中
假设 2:我解释您的陈述,“'但是这些新添加的产品在站点搜索中不可用* 意味着新添加的产品不会立即出现在您使用 Commerce Server Search 来返回结果的网站的搜索结果中.
现在,考虑 Microsoft Commerce Server 2009 R2 将其所有产品存储在GovinSite_ProductCatalog数据库中的 SQL Server 中。对于您创建的每个目录,都会在 SQL Server 中创建一组相应的表。您定义的类别和这些类别中的产品存储在该数据库的GovinCatalog_CatalogProducts表中。当您通过代码或使用基于 asmx 的 CatalogWebService 或通过 Commerce Server 目录管理器添加产品或类别时,该产品将添加到GovinCatalog_CatalogProducts桌子。也就是说,该产品是否会立即显示在您的实时搜索结果中将取决于您为该站点实施的缓存策略。如果您确实在使用 Microsoft Commerce Server 搜索,则根据您正在执行的搜索类型,它可能会使用全文搜索索引。如果您没有刷新 Commerce Server 中的站点缓存或全文搜索索引,您可能会遇到这样一种情况:您可以在 Catalog Manager 中看到该产品,但它在您的站点上不可见。刷新您的站点缓存或刷新全文目录索引将解决此问题。如果它不能解决您的问题,那么您的问题可能源于您使用 Commerce Server Catalog API(2007 或 2009)搜索产品时使用的代码。
因此,既然您声明您正在使用 Adobe Search & Promotion 为网站编制索引,我想您是在谈论网站内容,但不一定是网站产品目录数据。adobe 使用的索引可能与 Commerce Server Full Text Search 使用的索引完全不同。在您走远之前,请尝试以下操作:
1) 在目录管理器中创建一个产品 2) 尝试在您的站点上搜索该产品 3) 假设它没有出现,返回 Microsoft Commerce Server 目录管理器并从任务菜单中选择刷新目录全文索引左侧 4) 尝试在您的站点上再次搜索该产品 5) 如果仍然没有出现,请返回 Microsoft Commerce Server 目录管理器并选择刷新站点缓存 6) 尝试在您的站点上再次搜索该产品站点 7) 如果仍然没有显示,则一定是通过 Commerce Foundation (2009 API) 或 Core Systems Catalog API (2007) 向 Commerce Server 数据库发出搜索请求的代码存在问题
有关 Microsoft Commerce Server 缓存的更多信息,请在此处尝试
有关 Commerce Server 2007 目录 API 搜索的更多信息,请尝试此处
我可以对此进行更深入的讨论,但我更愿意让您验证我的假设并做出回应,然后再进一步探讨您的问题。