Sitecore数据库:从GUID获取内容tem的url

问题描述:

我有Sitecore上的的站点的导出数据库。找到内容项目的URL /路径需要什么关系?例如,假设我在Web数据库项目表中有GUID ='x'的文章。Sitecore数据库:从GUID获取内容tem的url

该资源的URL是否存储在另一个表中?我想也许它是从核心数据库中的链接表构建的,但我无法弄清楚这种关系。谢谢!

+0

您是否只有导出的数据库,或者您是否已经在本地启动并运行Sitecore? Sitecore将项目层次结构存储在一个扁平表结构中,并且需要找出树结构中某个项目的父项子项关系。即使如此,还有很多其他的事情在发挥。出于这个原因,你应该只通过API获取URL以确保它是准确的。 – jammykam

+0

感谢您的回复!事实上,我现在只有数据库。我无法访问sitecore apis。正如你所建议的那样,大多数情况下,我可以使用父子关系准确地找出内容项的URL,但它并不总是有效。我希望我能弄清楚API是如何构建url的,因为我无法访问它。抛开配置值,你知道API如何从数据库中建立URL吗? – telecasterrok

为了检索URL,您通常应该安装Sitecore实例,并使用正确的网站配置配置,并使用GUID调用LinkManager API代码,以便您可以确定该网站在该网站时的URL运行。

配置会影响URL生成,就像@jammykam提到的父子关系一样。

网址也取决于所查看的语言。例如,如果您在美国英语中查看特定的“GUID”,则网址中可能会有'en-us'部分。在法国,相同的'GUID'可能在URL中有'fr-fr'。但是,再次,取决于配置,如果它是单一语言网站,并且不强制将语言作为URL的一部分,则可能不会。

还有一些项目,如通配符,它​​们有一个GUID,但可以有许多URL,因为它们旨在解析各种可能的URL,然后以编程方式确定要加载的内容。

最后,我不建议使用GUID和数据库来确定URL。

+0

嗨周杰伦 - 感谢您的有益回应。我目前无法访问API,但我确实拥有数据库。我知道API使用配置值来生成url,但我正在寻找一种方法来构建每个内容项目的相对路径。我已经意识到父母/孩子的关系,我可以将它翻译成当前的网址,但我看到很多不遵循该约定的内容。任何其他想法? – telecasterrok

+0

同样,这归结于配置。例如,如果网站设置为使用显示名称而不是网址的商品名称,那么您需要使用正确的语言查找相应的显示名称来解析网址。 另外,如果设置了任何URL编码配置,这可能会影响项目名称如何转换为URL。 在没有考虑构建链接的API中的配置和逻辑的情况下,没有真正的方法可以根据数据库中的GUID创建原始URL。 –