
A website redesign should not force you to untangle years of content from a pile of decorative page blocks. The structure you choose for a website CMS determines whether articles, projects, people, and topics remain understandable when the visual design changes. Content modeling is the work of giving those things clear names, useful fields, and deliberate relationships.
You do not need an enormous schema to begin. A small, well-explained model is usually easier to test than a flexible system that allows everything. This guide uses an imagined studio publication to show how to build a model that supports today's pages without making unnecessary promises about every future channel.
Inventory real examples first
Collect representative content before defining fields. For the studio publication, gather a short announcement, a long tutorial, a project case study, and an author biography. Note what each item contains and where the information is repeated. Include imperfect examples, not just the most polished piece in the library.
Separate meaning from appearance
Separate meaning from appearance. A project has a client-facing summary because readers need to understand the work; it does not necessarily have a purple card subtitle. A tutorial has sections because its argument needs structure; it does not need a field named second-left-column. Model the information before encoding a particular layout.
Create a simple inventory with the item type, current location, intended owner, and known problems. Mark missing images, uncertain publication dates, and inconsistent category labels. Those issues do not disappear when content moves into a new editor. Recording them early keeps the migration from becoming a silent process of guessing.
Define content types around stable concepts
A content type groups items with a shared purpose. Articles, projects, and people are plausible types because each has recognizable information and behavior. A collection named homepage-blue-boxes is harder to reuse because its meaning depends on one design. The right level of structure follows your editorial work, not an abstract wish to make everything reusable.
For an article, start with a title, slug, excerpt, body, featured image, topic, and publication information. For a person, start with a display name, biography, and an optional portrait. Add references between them when the relationship matters. Do not make an editor repeatedly type the same biography into every article.
As an implementation example, Decap CMS explains its collection configuration, including how collections and fields describe editable content. The exact syntax depends on the CMS you choose. The transferable idea is to give editors a consistent shape for repeated items, with clear labels and defaults that reflect the actual workflow.
Give every field a reason to exist
For each field, write its purpose, where it appears, whether it is required, and an example. A short summary might appear on archive cards and related-content panels. A featured image might support previews and sharing. A field with no identifiable reader or workflow is a candidate for removal.
Avoid using one field for several different meanings. The title is not always the same as a navigation label, and an excerpt is not necessarily an appropriate search description. Separate them only when the distinction is useful enough to justify the editorial burden. Too little structure creates ambiguity; too much structure creates needless work.
Write help text that explains the task rather than repeating the label. Instead of saying enter summary, explain that the summary should tell readers what they will learn without repeating the title. For an image description, explain the image's editorial purpose. Helpful guidance belongs beside the decision, where it can prevent inconsistent content.
Set validation rules with care
Validation should catch mistakes that the system can actually identify. A required title, a valid date, and a unique route are reasonable examples. A rule demanding exactly the same summary length for every article may produce awkward writing without improving the experience. Test constraints against real examples before treating them as permanent rules.
Distinguish required for saving from required for publishing. Writers may need to preserve an incomplete draft before an image or review is ready. Preventing all saves until every field is finished can make the editor less forgiving. Where the CMS supports separate states, use them to represent work in progress explicitly.
Decide what happens when a field is intentionally empty. An absent portrait might use a neutral layout without an image, rather than a broken icon or an invented photograph. An article without a category should not silently appear under an unrelated default. Empty states are part of the content design, not an exception to it.
Keep relationships understandable
Relationships let one item refer to another without copying its contents. An article may reference a person, a topic, and several related articles. That can improve consistency, but it also creates dependencies. Ask what happens when the referenced item is renamed, unpublished, or deleted.
Use stable identifiers where the system offers them and keep the visible label understandable to editors. A person should be selectable by a recognizable name, not only by an opaque internal code. A relationship field that lists every item in a large library without context may be technically flexible but practically hard to use.
Draw a small relationship map. Mark the direction of each connection and the consequences of removing an item. In the studio example, deleting a person should trigger a review of their article credits rather than silently leaving broken references. The map gives developers and editors a common way to discuss behavior before a migration exposes it.
Treat URLs and dates as editorial data
A page slug deserves more attention than a decorative title. Decide when a slug becomes stable and what process applies to changing it after publication. Keep a record of existing addresses during a migration. A content system that makes renaming effortless still needs a plan for old links and bookmarks.
Separate a real publication date from a scheduled date and a modification date. Do not automatically describe old content as newly updated because a template was rebuilt. Define which editorial changes justify an update and who records it. Visible dates, metadata, and feeds should tell the same story.
For imported content, preserve the evidence you have and flag what you do not know. An uncertain historical date should not become a confident claim simply because the destination requires a value. Resolve the rule with the site owner before import. Our static website SEO checklist explains why consistent page metadata belongs in the publishing review.
Test the model outside the ideal path
Populate the model with at least a handful of deliberately varied items. Try a long title, several topic references, a portrait-oriented image, a missing optional field, and body content with code or a table. Inspect the editor, the preview, the archive card, and the exported representation.
Then make an ordinary change to the visual design. Move the article summary from below the image to above it. Change the card proportions. Present the same project in a compact list. The content should remain understandable without forcing editors to rewrite it just to accommodate a layout adjustment.
Ask a new editor to create an item using only the labels and help text. Record where they hesitate. That hesitation may indicate a confusing field name, an unclear relationship, or an assumption that exists only in the designer's head. Revise the model before importing a large library, when changes are still relatively contained.
Plan how the model will change
No content model remains perfect forever. Record a lightweight version history describing added fields, renamed concepts, and migration steps. Avoid changing a field's meaning while keeping its old name, because existing values may no longer fit. A deliberate migration is easier to inspect than a silent reinterpretation.
Assign ownership for changes. Editors should have a way to propose improvements, and maintainers should understand the consequences for templates, exports, and existing content. Review a requested field against actual examples before adding it. Sometimes a better help message solves the problem without changing the schema.
The takeaway
Model the information your website needs to communicate, then connect it to the design. Use clear types, purposeful fields, understandable relationships, and honest date rules. Test awkward examples and document changes. A good website CMS model does not predict every redesign; it gives your content enough structure to survive one without losing its meaning.


