sitecore-sites.ps1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#
# sitecore_sites.ps1
#
function Get-SitecoreSites
{
    [cmdletbinding()]
     Param(
        [parameter(ValueFromPipeline)]
        [ValidateNotNullOrEmpty()] 
        [string[]]$Path
    )

    Process
    {
        $colSites = @()
    $files = Get-ChildItem -Path $Path -Filter *.config 
    foreach($file in $files)
    {
           
    [xml]$XmlDocument = Get-Content -Path $file.FullName 
            $site = $XmlDocument.configuration.sitecore.sites.site
           
    if( $site -ne $null -and $site.startItem -ne $null)
            {
                 Write-Verbose "Processing file $file"
                 $colSites += $site
            } 
        }
        return $colSites;
    }
}

Export-ModuleMember -Function Get-SitecoreSites