Visão geral sobre modelo e script de sites do SharePoint

Observação

  • Modelos e scripts de site atualmente só têm suporte no SharePoint Online.
  • Nas versões anteriores do SharePoint, os modelos de site eram chamados de designs de site, mas serão chamados de modelos de site no futuro.
  • O Microsoft Office SharePoint Online tem uma nova experiência de modelo de site que estará disponível para todos os usuários do SharePoint com permissões para criar sites do Microsoft Office SharePoint Online. Saiba mais sobre a nova experiência de modelo de site.
  • A partir de hoje, a experiência do modelo de site não pode ser desabilitada.
  • Os modelos de site criados por sua organização e definidos como o modelo padrão serão aplicados automaticamente quando novos sites forem criados, mas podem ser atualizados pelo proprietário do site selecionando Configurações e, em seguida, Aplicar um modelo de site.
  • O histórico de versões do modelo de site não está disponível atualmente para a nova experiência de modelo de site, mas será incluído em iterações futuras.

Use os scripts e modelos de site para automatizar o provisionamento de sites modernos novos ou existentes do SharePoint que usam suas configurações personalizadas.

Quando as pessoas da sua organização criam novos sites do SharePoint, geralmente você precisa garantir um certo nível de consistência. Por exemplo, talvez seja necessário a aplicação de identidade visual e temas adequados a cada novo site. Você também pode ter scripts de provisionamento de site detalhados, como o uso de mecanismo de provisionamento, que precisarão ser aplicados sempre que um novo site for criado.

Este artigo descreve como usar modelos e scripts de site para fornecer configurações personalizadas aplicáveis a novos sites criados.

Como funcionam os modelos de site

Os modelos de site podem ser usados sempre que um novo site é criado, para aplicar um conjunto consistente de ações. Também podem ser aplicados aos sites modernos existentes (sites de Equipe e Comunicação conectados ao grupo). Normalmente, a maioria das ações afeta o site, como definir o tema ou criar listas. Mas um modelo de site também pode incluir outras ações, como gravar o URL do novo site em um log ou enviar um tweet.

Observação

  • Os modelos de site criados com scripts de site personalizados serão exibidos na guia Da sua organização na galeria de modelos de site.
  • Os modelos de site personalizados feitos por sua organização serão exibidos na galeria de modelos de site com base no tipo de site escolhido pelo usuário - um site de comunicação ou um site de equipe. Portanto, é provável que os usuários não vejam todos os modelos de site de sua organização na galeria de modelos de site. Em breve, os usuários poderão navegar em todos os modelos de site fornecidos por sua organização, independentemente do tipo de site escolhido.

É possível criar modelos de site e registrá-los no SharePoint em um dos sites do modelo moderno: o site de Equipe ou de Comunicação. Veja como isso funciona nas etapas a seguir.

  1. Acesse a página inicial do SharePoint em seu locatário de desenvolvedor.

  2. Escolha Criar site.

    Você verá os dois modelos de site modernos: Site de Equipe e Site de Comunicação.

  3. Escolha o tipo de site necessário.

    • O SharePoint criará automaticamente um site de comunicação usando o modelo de site Tópico.
    • Se você tiver escolhido o site de equipe padrão, o Microsoft Office SharePoint Online criará um novo site usando o modelo de Colaboração de equipe.

    Para obter mais informações sobre como você pode alterar os modelos de site padrão, consulte Personalizar um modelo de site padrão.

  4. Navegue até o ícone Configurações e selecione Aplicar modelo de site para revisar os modelos de site fornecidos pela Microsoft com base no tipo de site que você escolheu na etapa três.

Quando um modelo de site for selecionado, o SharePoint criará o novo site e executará scripts para o modelo dele. Os scripts de site fornecem os detalhes para o modelo, como criar novas listas ou aplicar um tema. Essas ações de script são executadas no plano de fundo. Quando os scripts são concluídos, a página será atualizada para exibir os detalhes do script do site.

Observação

Os modelos de sites já podem ser aplicados a conjuntos de sites modernos criados anteriormente. Para saber mais, confira os artigos sobre API REST e PowerShell.

Anatomia de um script de site

Scripts de site são arquivos JSON que especificam uma lista ordenada de ações a serem executadas ao criar o novo site. As ações são executadas na ordem listada.

O exemplo a seguir é um script que tem duas ações de nível superior. Primeiro, ele aplica um tema que foi criado anteriormente, chamado Contoso Explorers. Em seguida, cria uma lista Controle de clientes.

{
  "$schema": "https://developer.microsoft.com/json-schemas/sp/site-design-script-actions.schema.json",
  "actions": [
    {
      "verb": "applyTheme",
      "themeName": "Contoso Explorers"
    },
    {
      "verb": "createSPList",
      "listName": "Customer Tracking",
      "templateType": 100,
      "subactions": [
        {
          "verb": "setDescription",
          "description": "List of Customers and Orders"
        },
        {
          "verb": "addSPField",
          "fieldType": "Text",
          "displayName": "Customer Name",
          "isRequired": false,
          "addToDefaultView": true
        },
        {
          "verb": "addSPField",
          "fieldType": "Number",
          "displayName": "Requisition Total",
          "addToDefaultView": true,
          "isRequired": true
        },
        {
          "verb": "addSPField",
           "fieldType": "User",
          "displayName": "Contact",
          "addToDefaultView": true,
          "isRequired": true
        },
        {
          "verb": "addSPField",
          "fieldType": "Note",
          "displayName": "Meeting Notes",
          "isRequired": false
        }
      ]
    }
  ],
  "version": 1
}

Cada ação em um script de site é especificada por um valor de verb no JSON. No script anterior, a primeira ação é especificada pelo verbo applyTheme. Em seguida, o verbo createSPList cria a lista. O verbo createSPList contém seu próprio conjunto de verbos que executam ações adicionais apenas na lista.

As ações disponíveis incluem:

  • Criar uma nova lista ou biblioteca (ou modificar o padrão criado com o site)
  • Criar colunas de site, tipos de conteúdo e configurar outras configurações de lista
  • Defina propriedades de identidade visual do site, como layout de navegação, layout de cabeçalho e plano de fundo de cabeçalho
  • Aplicando um tema**
  • Definir um logotipo do site
  • Adicionando links para início rápido ou navegação no hub**
  • Acionamento de um fluxo do Power Automate
  • Instalar uma solução implantada do catálogo de aplicativos
  • Definindo configurações regionais para o site**
  • Adicionar entidades de segurança (usuários e grupos) para funções do SharePoint
  • Configurar o recurso de compartilhamento externo para o site**

Para obter uma lista completa de ações disponíveis e seus respectivos parâmetros, confira o artigo sobre Esquema JSON.

Observação

  • As ações marcadas com ** são bloqueadas automaticamente para sites de canal.
  • Para bibliotecas e listas, use o comando Get-SPOSiteScriptFromList do PowerShell para criar a sintaxe de script do site a partir de uma lista existente do SharePoint.

Scripts de site podem ser executados novamente no mesmo site após o provisionamento. Scripts de site não são destrutivos, portanto, quando executados novamente, eles garantem que o site corresponda à configuração no script.

Por exemplo, se o site já tiver uma lista com o mesmo nome que o script está criando, o script de site adicionará somente campos ausentes à lista existente.

Nós controlamos anteriormente o limite de ações do site script para 30. Isso continua sendo o limite para scripts aplicados de forma síncrona usando o comando Invoke-SPOSiteDesign , mas com base nos comentários do cliente e no suporte para ações adicionais, aumentamos esse limite para 300 ações (ou 100.000 caracteres) quando os scripts são aplicados de forma assíncrona (por meio da interface do usuário ou usando o comando Add-SPOSiteDesignTask ).

Há também um limite de 100 scripts de site e 100 modelos de site por locatário.

Usar PowerShell ou REST para trabalhar com modelos de site e scripts de site

Você pode criar modelos e scripts de sites usando PowerShell ou API REST. O exemplo a seguir cria um modelo de site e um script de site que usa o script de site.

C:\> Get-Content 'c:\scripts\site-script.json' `
     -Raw | `
     Add-SPOSiteScript `
    -Title "Contoso theme and list"

Id          : 2756067f-d818-4933-a514-2a2b2c50fb06
Title       : Contoso theme and list
Description :
Content     :
Version     : 0

C:\> Add-SPOSiteDesign `
  -Title "Contoso customer tracking" `
  -WebTemplate "64" `
  -SiteScripts "2756067f-d818-4933-a514-2a2b2c50fb06" `
  -Description "Creates customer list and applies standard theme"

No exemplo anterior, o cmdlet Add-SPOSiteScript ou a API REST CreateSiteScript retorna uma ID de script do site. Isso é usado para o parâmetro SiteScripts na chamada subsequente para o cmdlet Add-SPOSiteDesign ou a API REST CreateSiteDesign .

Parâmetro Valor Tipo de modelo de site
WebTemplate 64 Modelo de site da equipe
WebTemplate 1 1 Site de equipe (com criação de grupo desabilitada)
WebTemplate 68 Modelo de site de comunicação
WebTemplate 69 Modelo de site de canal

Para obter informações passo a passo sobre como criar um modelo de site, consulte Primeiros passos na criação de modelos de site.

Observação

  • Um modelo de site pode executar vários scripts. As IDs de script são transmitidas em uma matriz e são executadas na ordem listada.
  • O termo anterior para modelos de site ainda pode aparecer em determinados rótulos de cmdlet e script como "modelo de site".

Provisionamento PnP e personalização usando o Power Automate

Uma ação fornecida pelos scripts de site é a capacidade de acionar um fluxo do Power Automate. Isso permite especificar qualquer ação personalizada necessária, além das ações fornecidas nativamente em scripts do site.

Se você usa o mecanismo de provisionamento de PnP para automatizar a criação de sites, é possível usar um fluxo do Power Automate para integrar aos modelos de sites. Você pode manter todos os scripts de provisionamento existentes, bem como criar novos scripts de provisionamento personalizados usando essa técnica.

Processo de acionamento de um Microsoft Flow

O processo funciona da seguinte forma:

  1. O script instancia o fluxo do Power Automate usando uma URL com detalhes adicionais.
  2. O fluxo envia uma mensagem para uma fila de armazenamento do Azure que você configurou.
  3. A mensagem aciona uma chamada para uma função do Azure que você configurou.
  4. A função do Azure executa o script personalizado, como o mecanismo de provisionamento PnP, para aplicar as configurações personalizadas.

Para obter um tutorial passo a passo sobre como configurar seu próprio fluxo de Power Automate com provisionamento PnP, consulte Criar um modelo de site completo usando o mecanismo de provisionamento PnP.

Escopo

Você pode configurar modelos de site para que apareçam apenas para determinados grupos ou pessoas em sua organização. Isso é útil para garantir que as pessoas vejam apenas os modelos de site destinados a elas. Por exemplo, você pode desejar que o departamento de contabilidade veja apenas os modelos de site criados especificamente para eles. E a exibição dos modelos de site de contabilidade pode não fazer sentido para outras pessoas.

Por padrão, um modelo de site pode ser visualizado por todos quando ele é criado. Os escopos são aplicados usando o cmdlet Grant-SPOSiteDesignRights ou a API REST GrantSiteDesignRights. Você pode especificar o escopo por usuário ou grupo de segurança habilitado para email.

O exemplo a seguir mostra como adicionar direitos de visualização para Marcos (um usuário no site fictício da Contoso) em um modelo de site.

Grant-SPOSiteDesignRights `
  -Identity 44252d09-62c4-4913-9eb0-a2a8b8d7f863 `
  -Principals "nestorw@onmicrosoft.com" `
  -Rights View

Confira mais informações sobre como trabalhar com escopos em Escopo do acesso aos modelos de site.

Confira também