How to Create an Authors Page in Your Ghost Theme

Ahmad Ajmi
May 9, 2018 · 3 min read

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

Create the Authors Static Page

  • Click the Turn this post into a static page checkbox.
  • Publish the page.

Create the Authors Page Theme File

{{!< 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.

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.

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


If you are looking for fast, elegant and premium Ghost themes, make sure to visit Aspire Themes 👌

Aspire Themes

Elegant WordPress, Ghost & Jekyll Themes

Ahmad Ajmi

Written by

I Create Themes @aspirethemes :: @envato Author

Aspire Themes

Elegant WordPress, Ghost & Jekyll Themes