由于某种原因,大量页面的占位符键已更改,我需要将其更改回来.问题是我们使用动态占位符,因此占位符键的一部分是随机GUID,它们位于每个子布局占位符键中
所以我需要
/bacontent/../baproducttabscaffold{6e0244e2-3583-47cb-b575-0bc920186d42}
Run Code Online (Sandbox Code Playgroud)
成为
/bacontent/../baproducttabscaffold{895ecd6f-4abb-478d-9dad-88e5e05b8c30}
Run Code Online (Sandbox Code Playgroud)
改变这些最有效的方法是什么?
我最终做的是使用Sitecore Powershell Extensions https://marketplace.sitecore.net/en/Modules/Sitecore_PowerShell_console.aspx
我用的脚本
$pages = gci -Path "master:\my path" -Recurse
$oldGuid = "6e0244e2-3583-47cb-b575-0bc920186d42"
$newGuid = "895ecd6f-4abb-478d-9dad-88e5e05b8c30"
foreach($page in $pages){
$oldRenderings = $page.__Renderings
$newRenderings = $oldRenderings.Replace($oldGuid, $newGuid)
$page.BeginEdit()
$page.__Renderings = $newRenderings
[void]$page.EndEdit()
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
164 次 |
| 最近记录: |