删除点名批量规则

哈罗网站corians

需要删除多批量项目个性化规则吗 或想学习如何快速实现if yes表示正确位置

最近需要在整个网站添加个性化团队在模板层次对所需页面做此操作但他们不希望特定节点和所有子项, 并想保持它远离所有个性化, 并永远不会应用到那些项目上有近似1000+项,所以如果他们手动删除每个项-它需要大量时间省省时间创建工具 几分钟后完成

需要以下内容:

  • 父项ID-这样我们才能遍历子项
  • 发端/子布局ID
  • 数据源值-
/删除批量个人化规则并更新数据源//默认设备设备项设备=新设备项目/Itech遍历所有项目(项目子项目父子.Axes.GetDescents()){var renderings = childItem.Visualization.GetRenderings(device, true).Where(r => r.RenderingID == Sitecore.Data.ID.Parse(txtRenderingID.Text)).ToArray()!{字符串日志= " 未更新项目:+子项目.paths.Path+ ",Info:用ID提交+txtRenderingID.Text+Sitecore.Diagnostics.Log.Info(log, this)!继续//获取布局定义和设备Sitecore.Data.Fields.LayoutFriends=NewSitecore.Data.Fields.LayotFields.servecore.Layout定义布局Sitecore.Layouts.DeviceDefinition deviceDefinition = layoutDefinition.GetDevice(device.ID.ToString())!var renderingItem = deviceDefinition.GetRendering(renderingID)!{//删除所有个性化规则/更新数据源值生成Troject.Datasource=txtNewDataSourceID.Text//保存布局修改子项目.Editing.BeginEdit布局字段.value=布局定义.toXmlchildItem.Editing.EndEdit()!}}}}}

容我向你们解释我上层代码

  1. 从Sitecore获取默认设备
  2. 遍历子项目
  3. 继续处理某项指派给它的任何翻文
  4. 继续处理下项
  5. 获取布局定义和设备
  6. 获取并删除所有规则
  7. 保存修改

最快捷最易解法,因为没有网站核心Powershell安装万一知道其他更好的解决办法,请在下文做评语

网站布局快乐