Skip to main content

Templates and partials

Ghost chooses a root template based on route and context. Each template can include partials (reusable blocks). This page lists what exists and where it’s used.

Root templates (when Ghost uses them)

TemplateWhen used
default.hbsBase layout only; not used alone. All other templates extend it with {{!< default}}.
home.hbsWhen the site’s “homepage” is set to a custom page (e.g. “Home” page).
index.hbsBlog/archive (e.g. / or /blog/ depending on routes).
post.hbsSingle post.
page.hbsGeneric page (no custom template selected).
author.hbsAuthor archive.
tag.hbsTag archive.
page-about.hbsPage with template “About” (slug typically about).
page-services.hbsPage with template “Services” (slug typically services).
page-contact.hbsPage with template “Contact”.
page-ghost-application.hbsPage with template “Ghost application” and slug ghost-application.
page-thanks.hbsThanks page (e.g. after form submit).
page-work.hbsWork/portfolio-style page.
custom-case-study.hbsPost with template “Case study”.
custom-full-feature-image.hbsPost with full-width feature image.
custom-narrow-feature-image.hbsPost with narrow feature image.
custom-no-feature-image.hbsPost with no feature image.

Ghost matches custom page templates by template name (shown in Admin when editing a page) and custom post templates when the user selects that template for a post.

Partials (used in templates)

PartialPurposeUsed in
coverBlog cover / member CTA (when index and not home)default.hbs
featured-postsFeatured posts carousel on blog indexdefault.hbs
footerSite footerdefault.hbs
pswpPhotoSwipe (lightbox) for post/pagedefault.hbs
hero(If used) Hero block
contentPost/page body with optional width and srcset imagespost.hbs, page.hbs, custom post templates
content-ctaIn-content CTA block
cta-sectionFull-width CTA section (headline, button)home.hbs, page-about.hbs, page-ghost-application.hbs, page-services.hbs
loopSingle post card in a feedindex.hbs, author.hbs, tag.hbs, related-posts
related-postsRelated posts blockpost.hbs, custom post templates
commentsComments blockpost.hbs, custom post templates
pagination(Handled by Ghost {{pagination}} in index)
service-cardService pillar cardhome.hbs
service-sectionFull service section (title, intro, list)page-services.hbs
principle-itemPrinciple/pillar itemhome.hbs
process-stepProcess step blockpage-services.hbs
two-column-sectionTwo-column content blockpage-about.hbs
ghost-responsibility-rowResponsibility → proof rowpage-ghost-application.hbs
ghost-highlight-cardHighlight card (theme, docs, performance, AI)page-ghost-application.hbs
project-card(If used) Project card
anchor-section(If used) Anchor section
srcsetResponsive image srcset snippetcontent.hbs, featured-posts.hbs, tag.hbs
icons/*Arrow, chevron, star, social iconsVarious

Templates compose these partials with theme settings (@custom.*) and Ghost data (posts, post, page, etc.). For per-template behaviour and theme settings, see Templates & pages.