Skip to main content

Basic Setup

Configure the roadmap page

Since v2.0.0 we added a new Roadmap page template, use it to outline your goals, milestones, and plan.

Create the roadmap page

Open Ghost admin, then go to pages and create a new page. Give the page a title (e.g. Roadmap, ...).

Next, open the page settings and change the page URL (slug) to roadmap. You can optionally add a feature image and an excerpt.

Finally, publish the page.

If you like the page description to have links, bold or italic text, remove the excerpt completely and add the text directly to the page content, then add your links and styles.

After saving the changes you should see the links and text styles on the page description:

The roadmap page with links and bold text on the page description

Create the roadmap posts

The final step is to start filing the roadmap page with posts.

Open Ghost admin, then go to posts and create a new post. Give it a title and fill in the content as you normally would.

Next, we need to mark this post as part of the roadmap collection, to do that open the post settings and add the internal tag #roadmap to the post (internal tags must start with #).

Featured posts will appear in the middle of the roadmap with a "milestone" icon.

The posts will appear in chronological order (oldest first). Keep in mind that all published roadmap posts are displayed, there is no limit and there is no pagination, try to keep the number of posts under 50.

Migrating from v1.x.x

If you haven't previously made changes to the default routes.yaml or routes-landing-page.yaml, then you can just upload the new updated file that comes with v2.0.0 to Ghost at Settings > Labs > Routes.

If you previously made changes to the default routes.yaml or routes-landing-page.yaml, go to Settings > Labs > Routes and download your current routes file, then open that file in a text editor and add the roadmap collection:

routes:

collections:
  /:
    permalink: /{slug}/
    template: index
    data: page.docs
    filter: "tags:hash-docs"

  /blog/:
    permalink: /blog/{slug}/
    template: blog
    data: page.blog
    filter: "tags:hash-blog"

  /changelog/:
    permalink: /changelog/{slug}/
    template: changelog
    data: page.changelog
    filter: "tags:hash-changelog"

  /showcase/:
    permalink: /showcase/{slug}/
    template: showcase
    data: page.showcase
    filter: "tags:hash-showcase"

  /roadmap/:
    permalink: /roadmap/{slug}/
    template: roadmap
    data: page.roadmap
    filter: "tags:hash-roadmap"
    order: "published_at asc"
    limit: "all"

taxonomies:
  tag: /tag/{slug}/
  author: /author/{slug}/

Finally, upload the updated file to Settings > Labs > Routes.

If you're self-hosting, you might need to restart your Ghost server using `ghost restart`