SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

This code works fine.

$spWeb = Get-SPWeb -Identity http://xxx
 $listTemplate = [Microsoft.SharePoint.SPListTemplateType]::GenericList 
 $spListCollection = $spWeb.Lists 
 $spListCollection.Add("ExternalSites","External Sites",$listTemplate)
 $spList = $spWeb.GetList("/Lists/ExternalSites")
 $spFieldType = [Microsoft.SharePoint.SPFieldType]::Text 

However the Add method receives the display name, if I change those to. External Site Url and External Site Description

Then the internal names dont match anymore. They are something like:

External_x0020_Site_x0020_Url External_x0020_Site_x0020_Descri

I want to be able to change at least the displayname via powershell but leave the internal name as: ExtSiteUrl and ExtSiteDescription

share|improve this question
up vote 2 down vote accepted

By default, the title of the field would be the display name of the field and the internal name will not be changed since it will be used for programmatic purposes. Change the title property and you will be able to change the display name.

You can try changing this - $spList.Fields["External Site Desc"].Title

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.