Поделиться через


Настройка подсистемы подготовки PnP

Иногда не нужно извлекать все или некоторые артефакты с сайта или даже конкретный список. В подсистеме подготовки PnP используется файл конфигурации в формате JSON, с помощью которого обеспечивается полный контроль над этим процессом.

Настройка параметров извлечения

В https://aka.ms/sppnp-extract-configuration-schemaможно найти схему JSON. Схема, на которую ссылается этот URL-адрес, при появлении новых функций автоматически обновляется до более поздней версии.

При создании JSON-файла с помощью современного редактора, например Visual Studio Code, а также использовании ссылки на эту схему для всех настраиваемых свойств будет работать функция автозаполнения и появятся их описания.

Познакомьтесь со следующим примером конфигурации.

{
  "$schema":"https://aka.ms/sppnp-extract-configuration-schema",
  "handlers": [
    "Lists",
    "WebSettings",
    "Pages"
  ]
}

Он требует от подсистемы извлечения только списков, веб-параметров (в том числе названия, логотипа и т. д.) и домашней страницы.

В некоторых обработчиках можно задать дополнительные параметры конфигурации.

{
  "$schema":"https://aka.ms/sppnp-extract-configuration-schema",
  "persistAssetFiles": true,
  "handlers": [
    "Lists",
    "WebSettings",
    "Pages"
  ],
  "lists": {
    "lists": [
      {
        "title": "My Test List",
        "includeItems": true,
        "query": {
          "includeAttachments": true
        }
      }
    ]
  },
  "pages": {
    "includeAllClientSidePages": true
  }
}

В описанной выше конфигурации извлечение списков ограничено только списком, называемым "My Test List". Мы сообщаем подсистеме о том, что объекты списка не надо экспортировать в шаблон (они будут отображаться как элементы DataRow) и что также следует включать вложения, если они есть. Однако такие вложения не будут загружаться, если для свойства persistAssetFiles не задано значение true.

Если имеется файл конфигурации, его можно использовать в соответствии с описанием в документации для Get-PnPSiteTemplate.

Get-PnPSiteTemplate -Configuration "config.json" -Out "template.xml"

Обратите внимание: для списков можно задать дополнительные параметры конфигурации. Рекомендуем изучить схему подробнее.

Если указан обработчик Pages, то по умолчанию подсистема экспортирует только главную страницу. Если вы хотите экспортировать все страницы, задайте для свойства includeAllClientSidePages в разделе pages значение true.

См. также