我们有一个Sitecore网站,其中有几个项目已断开与旧工作流程状态的链接,而这些状态已不再适用于我们。我知道您可以在删除项目时删除链接,但是当缺少的项目已经消失时,我没有看到简单的界面删除项目上的断开链接。
在这种情况下删除断开链接的最佳方法是什么?感谢。
答案 0 :(得分:12)
Sitecore管理页面允许删除损坏的链接。你可以在这里找到它:
http://localhost/sitecore/admin/RemoveBrokenLinks.aspx
您只需选择数据库并执行操作即可。您还可以序列化在此过程中更改的所有项目。
您可能需要更改web.config
中的超时设置:
<setting name="DefaultSQLTimeout" value="10:00:00" />
<setting name="DataProviderTimeout" value="00:00:00" />
答案 1 :(得分:2)
Sitecore在web.config的LinkDatabase部分中指定的数据库中维护一个名为Links的表。您可以通过以下方式获取所有损坏的链接:
Sitecore.Data.Database db = Sitecore.Context.Database;
Sitecore.Links.LinkDatabase linkDb = Sitecore.Globals.LinkDatabase;
Sitecore.Links.ItemLink[] brokenLinks = linkDb.GetBrokenLinks(db);