Skip to content
Make Your Ghost Blog Beautiful & Make It Fast & Accessible With the New Ghost Theme: Nubia 😍 🎉

How to Create an Authors Page in Your Ghost Theme


Adding a page to list all the blog authors in your Ghost theme will give your readers the opportunity to discover and browser your authors easily.

In this post, I will share with you how to add a custom authors page to your Ghost theme. I will use the default Casper theme as an example, but all the steps and code will apply to any theme with a little customization as required.

Enable the Ghost Public API

The Ghost Public API required to the authors list. You can enable the Public API from the Ghost admin. Go to Labs > Beta features section and check the Public API mark to enable it.

Enable the Ghost Public API

Create the Authors Static Page

  • Create a new story and call it Authors for example, and make sure that the POST URL is authors.
  • Click the Turn this post into a static page checkbox.
  • Publish the page.

Create the Authors Static Page

Create the Authors Page Theme File

In your theme directory, create a new file and name it page-authors.hbs and then copy the following code inside it. You may need to restart your Ghost server for the new page to take effect.

{{!< default}}

<header class="site-header outer">
  <div class="inner">
    {% raw %}{{> "site-nav"}}
  </div>
</header>

{{#post}}

<main id="site-main" class="site-main outer" role="main">
  <div class="inner">
    <header class="post-full-header">
      <h1 class="post-full-title">{{title}}</h1>
    </header>

    {{#get 'users' limit='all' include='count.posts' order='count.posts desc'}}
      <div class="post-feed">
        {{#foreach users}}
          <article class="post-card {{#unless profile_image}} no-image{{/unless}}">
            {{#if profile_image}}
              <a class="post-card-image-link" href="">
                <div class="post-card-image" style="background-image: url({{profile_image}})"></div>
              </a>
            {{/if}}
            <div class="post-card-content">
              <a class="post-card-content-link" href="{% raw %}{{url}}">
                <header class="post-card-header">
                  <h2 class="post-card-title">{{name}}</h2>
                </header>
                <section class="post-card-excerpt">
                  <p>{{bio}}</p>
                </section>
              </a>
            </div>
          </article>
        {{/foreach}}
      </div>
    {{/get}}
  </div>
</main>

{{/post}}

In this code, the get helper used to get the blog users. The include attribute used to get the posts count. The order attribute used to order the users list based on the posts attached to them.

Next, the foreach helper used to loop through each author and render the list with the author profile image, name, URL and the bio.

Ghost Casper Theme Tags Page

This is an initial example of what you can do to the authors page. You can take the code further and show the author social media accounts, location, cover image and posts count. As an example, you can create something like what I have done with the Nubia theme. You can also add the tag page link to the blog navigation.

Ghost Nubia Theme Authors Page

I would recommend checking the official Ghost documentation including the author-context for more information about the list of available attributes.



Get Ready to Build a Better and Faster Blog

Premium blog themes for WordPress, Ghost, and Jekyll
Trusted by 1000+ happy customers

Browse Themes
superhero