2016-06-10 1 views
1

어떤 이유로 인해 많은 수의 페이지에 대한 자리 표시 자 키가 변경되었으므로 다시 변경해야합니다. 문제는 자리 키의 일부가 임의의 GUID는 그들이 모든 sublayouts 키Sitecore에서 동적 자리 표시자를 사용하는 많은 자리 표시 자 설정을 업데이트하는 방법

그래서 내가

/bacontent/../baproducttabscaffold{895ecd6f-4abb-478d-9dad-88e5e05b8c30} 

/bacontent/../baproducttabscaffold{6e0244e2-3583-47cb-b575-0bc920186d42} 

을 필요로하는 자리 표시 자에 그래서 우리는 동적 위치에 홀더를 사용하여 무엇 것 이들을 변경하는 가장 효율적인 방법이 될까요?

답변

6

내가 Sitecore 파워 쉘 확장 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() 
} 
을 사용하는 스크립트를 사용하고 결국 무엇