Restore default Site Columns and Content Types in SharePoint Online / Office365

Through my tenure as a SharePoint Administrator focusing on SharePoint migrations, I feel like I somehow run into a new and unique issue each time I have a new engagement. For this specific issue, I am migrating my client from an on-premise SharePoint 2007 environment to an ADFS enabled SharePoint Online / Office365 tenant. This is obviously a big jump, and is going to offer a lot of great new features for my client. As an end-user, this migration will be awesome, but as an administrator, I cringe at the thought of performing a jump straight from 2007 to SPO.

In order to make things work, we had to leverage a migration tool – specifically Metalogix Content Matrix. We used this tool to migrate mostly content-only from the source to the target. We skipped all custom InfoPath forms, workflows, etc. to prevent any conflicts or degraded functionality that may be replaced by upgraded modules.

Using Content Matrix to perform this content-only migration, we found that Site Columns associated with Custom InfoPath forms were still being migrated to the target. To make it better, my client had created some InfoPath forms with friendly names which were the same as system default Content Type Site Columns. Content Matrix addressed this by migrating the custom InfoPath form Column, and having this column overwrite the system default. In our case specifically, we saw the First Name and E-Mail Address fields (seen often in Contact List lists) to not be viewable. The column would show in List Settings, but you could not select it to review the column settings or migrate the content into these disabled columns.

This placed a need on how to recreate the out of the box Site Columns and Content Types to restore them to what they would be on a fresh Site Collection. With this being SharePoint Online, we have many more limitations on how to do this, but I was able to find a fix.

Using the SharePoint Online Client Browser (HERE), I was able to review all Site Collections Features (including the specific hidden features). The features I was looking for were:

  • Standard Column Definitions
  • Standard Content Type Definitions

Once finding the GUIDs for the above features, I was able to use the manage-features.ps1 script for SharePoint Online (HERE). I ran through and disabled both of the above features, and then re-enabled them, and the Site Columns were restored and functionality of the affected lists were restored.