100% Free Forever
AI-Powered Learning
Industry Expert Content
Certificates & Badges
Learn At Your Own Pace
Programming

Columns and Content Types

Understand how SharePoint columns define metadata fields and how content types bundle columns, templates, and behavior into reusable, inheritable schemas.

Content ManagementIntermediate9 min readJul 10, 2026
Analogies

Site Columns as Reusable Field Definitions

A Site Column is a metadata field definition — its name, data type, and validation rules — created once at the site (or site collection) level so it can be reused across multiple lists and libraries without redefining it each time. Site columns live in a Content Type Gallery or Site Column gallery, and changes made to a site column, such as adding a new Choice option, propagate to every list that consumes it, unlike a list-scoped column that only exists in one list.

🏏

Cricket analogy: A Site Column like 'MatchFormat' with choices Test, ODI, T20 defined once at board level is like the ICC standardizing format names so every league from the BBL to the IPL references the same official list.

Content Types: Bundling Columns and Behavior

A Content Type is a reusable collection of site columns, a document template, workflows, and information management policies, packaged under one named schema such as 'Invoice' or 'Press Release'. When you attach a content type to a library, users see a 'New' menu with that content type's name, and creating a new item auto-applies its template and pre-defined columns. Content types support inheritance: a child content type like 'Sales Invoice' can extend a parent 'Invoice' content type, gaining its columns while adding its own, so a change to the parent's shared columns cascades to every child that hasn't overridden them.

🏏

Cricket analogy: A 'Match Report' content type bundling columns for venue, umpires, and result is like a cricket board's standardized post-match template that every stadium's official scorer fills in identically after each fixture.

Content types are managed centrally in Site Contents > Site Settings > Site Content Types (classic) or via the Content Type Gallery in a modern SharePoint admin flow. Enable 'Allow management of content types' on a library to add or remove content types beyond the library's default.

Applying Content Types to Libraries

A single library can host multiple content types simultaneously, which lets one library serve several document families with different metadata requirements — for example, a 'Legal Documents' library might accept both 'NDA' and 'MSA' content types, each surfacing its own required columns and template when a user clicks New. Content type ordering in the New menu is configurable, and you can set a default content type so the most common option requires no extra clicks.

🏏

Cricket analogy: A single 'Match Documents' library accepting both 'Team Sheet' and 'Injury Report' content types is like a stadium's shared drive holding two different official forms, each auto-formatted correctly when the relevant official starts a new one.

Deleting a site column that is used by a content type, or removing a content type still attached to items in a library, can silently orphan metadata on existing items. Always check 'Content Type Usage' before deleting a content type, and remove it from libraries first.

javascript
// PnPjs: create a site column and a content type that uses it, then add both to a library
import { spfi } from "@pnp/sp";

const sp = spfi();

await sp.web.fields.addChoice("ContractStatus", {
  Choices: ["Draft", "Under Review", "Signed", "Expired"],
});

const { ContentType } = await sp.web.contentTypes.add(
  "0x0101008...",
  "Vendor Contract",
  "Contract awaiting legal review"
);

await sp.web.contentTypes.getById(ContentType.StringId).fields.add(
  await sp.web.fields.getByTitle("ContractStatus")()
);

await sp.web.lists.getByTitle("Vendor Contracts").contentTypes.addAvailableContentType(
  ContentType.StringId
);
  • Site columns are field definitions created once and reused across many lists and libraries.
  • Content types bundle columns, a document template, and policies under one reusable named schema.
  • Content type inheritance lets a child type extend a parent, gaining and cascading shared column changes.
  • A single library can host multiple content types, each surfacing its own template on New.
  • Enable 'Allow management of content types' on a library to add content types beyond its default.
  • Deleting a content type or a column it depends on can orphan metadata; check usage first.

Practice what you learned

Was this page helpful?

Topics covered

#Programming#SharePointStudyNotes#ColumnsAndContentTypes#Columns#Content#Types#Site#StudyNotes#SkillVeris#ExamPrep