ElmsPark Guides
PageMotor

Blogging in PageMotor

PageMotor has no blog button, and that surprises people arriving from WordPress. The surprise runs the other way too: most of a blog was already there. This guide shows what core gives you, how to run a blog with nothing but pages, and when the free EP Blog plugin earns its place.

10 minutes to read 📦 EP Blog is free 🛠 Works on any PageMotor site August 2026

A blog is really four things wearing one name: a place to write (posts with dates and authors), a front page for them (newest first, with excerpts), a way to group them (categories and tags), and the plumbing around them (feeds, comments, scheduling, search). PageMotor core covers the first almost completely, half-covers the second, and the plumbing is standard EP Suite territory. The only piece genuinely missing was the automatic front page, and that is what EP Blog adds.

In this guide

  1. What core already gives you
  2. Route one: a blog made of plain pages
  3. The pieces that were already in place
  4. Route two: the EP Blog plugin
  5. How to choose

1 What core already gives you

PageMotor stores every piece of content with a publish date, a last-modified date and an author. Every page can have a Parent, and the URL nests under it: a page with Parent set to your /journal/ page lives at /journal/my-post/. Drafts, live and trash states are built in.

In other words, the data model is already blog-shaped. What core does not do is loop over that data on the front end. There is no screen that says “list everything under Journal, newest first, with an excerpt of each”. There are also no categories or tags, and no reader-facing feed in core itself.

The one honest gap

The missing organ is the index loop: the automatic newest-first front page. Everything else about blogging is either already in core or already in the suite.

2 Route one: a blog made of plain pages

You can run a perfectly respectable blog today with nothing but core pages. This is not a workaround; for a small, considered publication it is arguably the better tool.

How

  1. Create a page called Journal (or News, or Essays). It lives at /journal/.
  2. Write each post as its own page, and set its Parent to the Journal page. The URL nests: /journal/my-first-post/.
  3. The Journal page itself is your index, and you curate it by hand: a heading, a line or two about the post, a link. When you publish, you add its entry at the top.

Why this is genuinely good

The hand-built index is a feature in disguise. You choose the order, so your best work can sit on top forever instead of sliding off page three. You write the blurbs, so they read like an editor wrote them rather than the first 240 characters of each post. And there are no moving parts at all: nothing to configure, nothing to update.

When to use it

Plain pages shine when
You publish occasionally and deliberately. A dozen essays a year. A changelog. Case studies. Anywhere curation beats chronology.
They start to hurt when
You publish often. Every post is two edits (the post, then the index). Past twenty or thirty posts the hand-kept index becomes the chore you skip.

3 The pieces that were already in place

These four plugins are what most people actually mean by “blog features”, and none of them needs EP Blog. Each one works identically with plain pages and with EP Blog posts, so nothing you set up here is wasted if you change route later.

EP RSS — the feed

What: serves your site’s feed at /feed (RSS) and /feed/atom (Atom), newest first, with auto-discovery tags so readers like Feedly and NetNewsWire find it from your homepage URL alone.

Why: a feed is how regular readers actually follow a small site. It also gives search engines a fast signal that you have published something new.

When: the moment you have content people might want to follow. On the pages route your pages appear in /feed automatically; with EP Blog you additionally get a posts-only feed at /feed/rss/post.

EP Comments — the conversation

What: a full comment system with threading, moderation, spam protection and notification emails. It attaches to any content, pages included, with a per-page toggle.

Why: comments turn broadcasting into conversation, and moderated first-party comments are worth more than a social media thread you do not own.

When: when you want replies where the writing lives. Skip it if you would rather point readers at email or a forum; a blog without comments is still a blog.

EP Scheduled Content — the queue

What: set a future date and time on any draft and it goes live by itself.

Why: writing in batches and publishing on a rhythm is the single easiest way to keep a blog alive. The Tuesday post can be written on Saturday.

When: when you notice you write in bursts. It works on drafts of any type, so the pages route benefits equally.

EP Search — the archive key

What: a search form and results page over your titles and content, with highlighted excerpts.

Why: once the archive is bigger than one screen, search is how people (including you) find the piece from last spring.

When: from roughly your twentieth piece of content onward, or immediately if your posts are reference material.

Also worth knowing: EP SEO handles the social sharing cards and metadata for whichever route you choose, and every plugin above is on the free tier of the ElmsPark update channel, like EP Blog itself.

4 Route two: the EP Blog plugin

EP Blog adds the missing organ and the taxonomy around it. Concretely, over the pages route you gain:

On category archives being real pages. That is deliberate, and it is the same idea Chris describes: everything is a Page. Because each archive is an ordinary PageMotor page rather than a URL conjured by routing code, it carries its own title, meta description and social card, lands in your sitemap, works with breadcrumbs, and can take an introduction of your own above the list. The URLs stay flat however deep the nesting goes, so re-parenting a category never breaks a link you have already published.

Setting it up

  1. Activate EP Blog, then define your categories under Plugins → Blog, one per line.
  2. Create your /journal/ page with [ep-blog] in its body, and enter that URL as the Blog index URL in settings.
  3. Create posts under Content → Post, each with the Journal page as its Parent.
  4. Optionally put [ep-blog-meta] at the top of each post and [ep-blog-post-nav] at the bottom.

Posts render through your theme automatically; EP Blog clones your theme’s Page template into a Post template the first time it runs, so there is no Theme Editor work.

Migrating from the pages route later? Nothing is lost. Your hand-built index page simply gains the [ep-blog] shortcode below (or instead of) its curated list, and new writing goes in as posts. Existing pages can stay pages; the two live happily side by side.

5 How to choose

Plain pagesEP Blog
Front page of postsHand-curatedAutomatic, newest first
Effort per postTwo editsOne edit
Categories and tagsNoneNested, filterable, rolled up
Category archive URLsBuild them by handA real page each, optional
Bylines, older/newer linksHand-written if at allAutomatic
Editorial control of the indexTotalChronological by design
Feed (EP RSS)/feed/feed plus /feed/rss/post
Comments, scheduling, searchIdenticalIdentical
Moving partsZeroOne plugin

The short version: if you publish a few deliberate pieces a year and want to curate how they are presented, plain pages plus EP RSS is a complete and elegant blog. The moment publishing becomes a habit rather than an event, install EP Blog and let the index keep itself.


Go deeper

EP Blog docsEvery shortcode, setting and the public API.
EP RSS docsFeeds, per-type feeds and customisation.
EP Comments docsModeration, spam protection, notifications.
EP Scheduled Content docsFuture-dated publishing.