You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Pages currently support rich text body content but have no built-in featureImage field,
unlike Posts. I would like to propose a PR that adds a featureImage field to the built-in pages collection and
adds sidebar layout support in the blog/starter templates (image left or right of content).
Motivation
Pages like "About", "Contact", or "Projects" often benefit from a contextual image
displayed alongside the text — similar to how blog posts already show a feature image.
WordPress has supported this via _thumbnail_id on all post types for years.
Proposed API / UX
Schema: Add featureImage (type: image, optional) to the built-in pages
collection — same as posts.
Template: Add an optional imagePosition field ("left" | "right", default "right") to control sidebar placement.
Rendering: When featureImage is set, wrap content in a two-column layout:
image column (sidebar, ~40%)
body column (~60%)
Falls back gracefully to full-width if no image is set.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Summary
Pages currently support rich text body content but have no built-in
featureImagefield,unlike Posts. I would like to propose a PR that adds a
featureImagefield to the built-inpagescollection andadds sidebar layout support in the blog/starter templates (image left or right of content).
Motivation
Pages like "About", "Contact", or "Projects" often benefit from a contextual image
displayed alongside the text — similar to how blog posts already show a feature image.
WordPress has supported this via
_thumbnail_idon all post types for years.Proposed API / UX
featureImage(type:image, optional) to the built-inpagescollection — same as posts.
imagePositionfield ("left"|"right", default"right") to control sidebar placement.featureImageis set, wrap content in a two-column layout:Falls back gracefully to full-width if no image is set.
Affected areas
packages/core/src/schema/built-in/pages.ts— add fieldspackages/core/src/db/migrations/— migration for existing installstemplates/blog/src/pages/pages/[slug].astro— render sidebar layouttemplates/starter/src/pages/pages/[slug].astro— samedemos/seed data — add example pages with imagesNon-goals
imagealready renders a media picker)All reactions