gpt4 book ai didi

sitecore - 删除 Sitecore 中的所有引荐来源项目

转载 作者:行者123 更新时间:2023-12-02 01:02:32 25 4
gpt4 key购买 nike

我在 Sitecore 中有一个布局项目,我可以通过“链接”按钮识别所有引荐来源项目。我有很多推荐人项目,我想删除所有这些项目。我希望我不必单独检查每个项目来删除引用项目。我也希望不要删除引用的项目并重新创建它,因为它会为新项目生成不同的 GUID。

有没有办法通过 Sitecore Desktop 或 SQL Server 执行此操作?

最佳答案

您可以在代码隐藏中使用以下代码逻辑创建一个动态的 Asp.net 页面。

  public string RemoveReferenceLinks(string nodePath)
{
var db = Sitecore.Configuration.Factory.GetDatabase("master");
var item = db.GetItem(nodePath);

if (item == null) return new ItemLink[0];

var links = Globals.LinkDatabase.GetItemReferrers(item, true);

if (links.Length == 0)
{
return "No referrence found";
}

foreach (var link in links)
{
var sourceItem = link.GetSourceItem();

foreach (var item1 in sourceItem.Versions.GetVersions(true))
{

var field = item1.Fields[link.SourceFieldID];
var field2 = FieldTypeManager.GetField(field);

if (field2 == null) return;

using (new SecurityDisabler())
{
item1.Editing.BeginEdit();
field2.RemoveLink(link);
item1.Editing.EndEdit();
}

}
}

return "All reference removed";
}

关于sitecore - 删除 Sitecore 中的所有引荐来源项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26851705/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com