Skip to main content

Pages

Blog Builder includes a drag-and-drop section builder used for both the home page (landing page) and custom pages. Each page is assembled from a stack of reusable sections that can be added, configured, and reordered.

Required Permission

managePages

Landing Page

The home page (/) is built entirely with the section builder.

  • Admin location: Admin Panel > Landing (/admin/landing)
  • Add, remove, edit section configs, and drag-reorder sections
  • Once you hit save, the changes are live after a page reload

Custom Pages

Custom pages are standalone pages at a URL of your choosing.

  • Admin location: Admin Panel > Pages (/admin/pages)

Each custom page has the following fields:

FieldDescription
TitlePage display title
SlugURL path (the page is accessible at /[slug])
DescriptionShort description used for SEO meta tags
OG ImageImage used for Open Graph / social media previews
Statusdraft (not publicly visible) or active (public)
Has BlogEnables a blog category for this page (see below)
SectionsDrag-and-drop section builder

Slug Availability

Before saving a new page, slug availability is checked via GET /api/slugcheck/page?slug=[slug]. Slugs must be unique across all custom pages.

Blog Integration

When a custom page has "Has Blog" enabled, a blog category is created for it. Blog posts can then be scoped to this category, and they will appear at /[slug]/blog.

info

Disabling "Has Blog" on an existing page does not delete posts that were already assigned to that category.

Section Types

Both the landing page and custom pages use the same set of section types:

SectionDescription
HeroFull-width banner with a headline, subtext, and optional CTA button
FeaturesGrid of feature cards with icons, titles, and descriptions
GalleryImage gallery pulling images from the gallery system
Recent PostsAutomatically displays the latest published blog posts
Blog PostsConfigurable blog post listing with filter options (only available on custom pages)
TeamGrid of team member profiles
TestimonialsTestimonial/quote cards
StatsNumeric stat counters
FAQAccordion-style frequently asked questions
CTACall-to-action block with a button
FormsEmbeds an active form by selecting it from your forms list
TextRich text block supporting markdown
DividerVisual section separator

Reordering Sections

Sections can be dragged into any order within the editor. The updated order is saved when you save the page.