In this article you will see how to get all the titles and URLs of all sites
within the current site collection using SharePoint 2010 web service in
Powershell.
All sites within the site collection
In this you will see how to get all the site's titles and URLs within the
current site using SharePoint 2010 web service in Powershell.
Steps Involved
- Open SharePoint 2010 Management Shell by
going to Start | All Programs | SharePoint | Microsoft SharePoint 2010
Products | SharePoint 2010 Management Shell (Run as Administrator).
- Run the following script.
Powershell Script
##===================================================================================
## Automation : Get all the subsites using SharePoint 2010 Web Service in
Powershell
## Description : Returns the titles and URLs of all sites within the current
site collection
## Note:- Need to modify $webURL input parameter
## Author : Vijai Anand.R
## Date : 02-January-2012
##====================================================================================
#----------------------------------------------------- Input Parameters
--------------
## $webURL is
a string that contains the root site url
$webURL="http://serverName:10736/sites/ECT"
#----------------------------------------------------- GetAllSubWebCollection
function -----------------------------------------------------------
function
GetAllSubWebCollection()
{
$uriWeb=$webURL+"/_vti_bin/Webs.asmx?wsdl"
$websWebServiceReference
=
New-WebServiceProxy
-Uri
$uriWeb
-UseDefaultCredential
[System.Xml.XmlNode]$webCollXmlNode=$websWebServiceReference.GetAllSubWebCollection()
Write-Host
-ForegroundColor
Magenta
"Getting all the sites for: "
$webURL
foreach($web
in
$webCollXmlNode.Web)
{
write-host
-ForegroundColor
Yellow
"Title: "$web.Title
write-host
-ForegroundColor
Yellow
"URL:
"$web.URL
}
}
#----------------------------------------------------- Calling the function
-----------------------------------------------------------
GetAllSubWebCollection
Write-Host
-ForegroundColor
Green
"Build Succeeded"
Output
Summary
Thus in this article you have seen how to get all the sites within the current
site.