当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 如何使用 PowerShell 在 SharePoint Online 中导出列表模板?

作者:精品下载站 日期:2024-12-14 15:24:50 浏览:14 分类:玩电脑

如何使用 PowerShell 在 SharePoint Online 中导出列表模板?


要求:使用 PowerShell 在 SharePoint Online 中导出列表模板。

SharePoint Online 中的列表模板使您能够重复使用任何列表及其字段、公式、格式和其他网站集中的可选数据,而无需再次重新创建列表。应下载列表模板并将其上传到其他站点,以便从中创建列表。在本教程中,我们将指导您完成从 SharePoint Online 下载列表模板以用于在 SharePoint 网站上创建新列表或库的过程。

如何在 SharePoint Online 中导出列表模板?

要从 SharePoint Online 网站下载列表模板, 请执行以下操作:

  1. 单击“设置”齿轮>>“网站设置”页面>>单击“Web 设计器库”下的“列出模板”(在 SharePoint Online URL 中列出模板库:https://yourdomain.sharepoint.com/_catalogs/lt/Forms/AllItems .aspx)
  2. 在“列表模板库”中,单击要下载的列表模板的“名称”列链接。

    [玩转系统] 如何使用 PowerShell 在 SharePoint Online 中导出列表模板?

  3. 这会触发文件下载提示。单击“保存”下载文件。

    [玩转系统] 如何使用 PowerShell 在 SharePoint Online 中导出列表模板?

列表模板功能的范围是网站集。因此,它仅在顶级站点设置中可用!

PowerShell 在 SharePoint Online 中导出列表模板

以下是用于下载 SharePoint Online 列表模板的 PowerShell:


#Load SharePoint CSOM Assemblies
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"

#Function to download a list template from SharePoint Online using powershell
Function Download-SPOListTemplate
{
    param
    (
        [string]$SiteURL  = $(throw "Enter the Site URL!"),
        [string]$ListTemplateName = $(throw "Enter the List Template Name!"),
        [string]$ExportFile = $(throw "Enter the File Name to Export List Template!")
    )
    Try {
        #Get Credentials to connect
        $Cred= Get-Credential
        $Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)
 
        #Setup the context
        $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
        $Ctx.Credentials = $Credentials
        
        #Get the "List Templates" Library
        $List= $Ctx.web.Lists.GetByTitle("List Template Gallery")
        $ListTemplates = $List.GetItems([Microsoft.SharePoint.Client.CamlQuery]::CreateAllItemsQuery()) 
        $Ctx.Load($ListTemplates)
        $Ctx.ExecuteQuery()

        #Filter and get given List Template
        $ListTemplate = $ListTemplates | where { $_["TemplateTitle"] -eq $ListTemplateName }

        If($ListTemplate -ne $Null)
        {
            #Get the File from the List item
            $Ctx.Load($ListTemplate.File)
            $Ctx.ExecuteQuery()

            #Download the list template
            $FileInfo = [Microsoft.SharePoint.Client.File]::OpenBinaryDirect($Ctx,$ListTemplate.File.ServerRelativeUrl)
            $WriteStream = [System.IO.File]::Open($ExportFile,[System.IO.FileMode]::Create)
            $FileInfo.Stream.CopyTo($WriteStream)
            $WriteStream.Close()

            write-host -f Green "List Template Downloaded to $ExportFile!" $_.Exception.Message
        }
        else
        {
            Write-host -f Yellow "List Template Not Found:"$ListTemplateName
        }
    }
    Catch {
        write-host -f Red "Error Downloading List Template!" $_.Exception.Message
    } 
}

#Variables
$SiteURL = "https://Crescent.sharepoint.com/"
$ListTemplateName= "Projects Template"
$ExportFile = "C:\Temp\CrescentProject.stp"

#Call the function to Download the list template
Download-SPOListTemplate -SiteURL $SiteURL -ListTemplateName $ListTemplateName -ExportFile $ExportFile

此 PowerShell 脚本导出 SharePoint Online 中的列表模板。要在 SharePoint Online 中部署列表模板,请使用:如何使用 PowerShell 将列表模板上传到 SharePoint Online?

概括

总之,从 SharePoint Online 导出列表模板是一个快速而简单的过程,可以节省组织在创建新列表时的时间和精力。通过执行本文中概述的步骤,您可以轻松创建列表模板并将其导出以在其他 SharePoint Online 网站中使用。这对于具有复杂列表结构或想要标准化 SharePoint Online 中信息存储和管理方式的组织特别有用。通过在 SharePoint Online 中导出列表模板,您可以帮助确保您的列表一致、易于管理且经过定制,以满足组织的需求。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯