Shiro
Introduction
This guide explains how to install, set up, and customize the Shiro theme for Ghost. It assumes basic familiarity with Ghost. For general Ghost help, check out the official Ghost documentation.
Setup
Installing the Theme
To get Shiro up and running on your Ghost site:
- Log in to your Ghost Admin panel.
- Go to
Settings
>Design & branding
>Customize
. - Click
Change theme
at the bottom right. - Choose
Upload theme
and select the Shiro theme zip file. - Click
Activate
to apply the theme.
Removing the Theme
If you need to remove Shiro:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - Click
Change theme
at the bottom right. - Find Shiro in the theme list.
- Click the
...
next toActivate
. - Select
Delete
and confirm.
Note: You can’t delete an active theme. Switch to another theme first if needed.
Updating the Theme
To keep Shiro current with the latest features and fixes:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - Click
Change theme
at the bottom right. - Upload the new Shiro zip file as described in the installation process.
- Activate the updated theme.
Important: Updating will overwrite any changes made directly to theme files. Back up your customizations before updating.
Customization
Logo
Your logo is a key part of your site’s identity. Here’s how to set it up:
- In Ghost Admin, go to
Settings
>Design & branding
. - In the
Brand
tab, findPublication logo
. - Click
Upload logo
and choose your image. - Click
Save
.
Tip: Use a logo at least 60px tall with a transparent background for best results.
Logo Inversion for Dark Themes
Shiro can automatically adjust your logo for dark themes:
- Go to
Settings
>Design & branding
>Customize
. - Find
Invert logo colors when dark theme
in theSite wide
settings. - Toggle the switch on or off.
- Click
Save
.
Fonts
Fonts play a crucial role in your site’s readability and style. To change the font:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - Expand the
Site-wide
section. - Find the
Font family
dropdown. - Choose your preferred font.
- Click
Save
.
To use a custom font:
- Go to
Settings
>Code injection
. - In the
Site Header
section, add the font link and CSS. For example:
<link href="https://fonts.googleapis.com/css2?family=Your+Font+Name&display=swap" rel="stylesheet">
<style>
:root {
--font-family: 'Your Font Name', sans-serif;
}
</style>
- Click
Save
.
Accent Color
The accent color highlights important elements across your site. To change it:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - Expand the
Brand
section. - Find
Accent color
. - Click the color swatch and choose a new color.
- Click
Save
.
Color Scheme
Shiro offers various color schemes to match your brand and content style. To change the scheme:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - Expand the
Site-wide
section. - Find the
Color scheme
dropdown. - Choose your preferred scheme.
- Click
Save
.
Available schemes: Light, Zensen, Sakura, Botan, Blau, Midnight, Dark
Dark Color Scheme
Shiro can automatically switch to a dark color scheme based on the user’s system preferences. To enable this feature:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - Expand the
Site-wide
section. - Find
Enable dark color scheme
and toggle it on. - A new option
Dark color scheme
will appear. Select your preferred dark scheme. - Optionally, you can enable
Invert logo colors when dark color scheme
to automatically adjust your logo for dark themes. - Click
Save
.
When enabled, the site will use the selected dark color scheme when the user’s system is set to dark mode. This provides a seamless experience for users who prefer dark interfaces, especially in low-light environments.
Navigation
Effective navigation helps readers explore your content easily. Shiro supports primary (header) and secondary (footer) navigation.
Primary Navigation (Header)
- In Ghost Admin, go to
Settings
>Navigation
. - Edit the “Primary navigation” section.
- Click
Save
.
Secondary Navigation (Footer)
- In Ghost Admin, go to
Settings
>Navigation
. - Edit the “Secondary navigation” section.
- Click
Save
.
Social Icons
Connect with your audience by adding social media icons to your footer:
- In Ghost Admin, go to
Settings
>Navigation
. - In “Secondary navigation”, click “Add item”.
- For the label, use the lowercase name of the social platform (e.g., “twitter”, “facebook”).
- For the URL, paste your profile link.
- Click
Save
.
Supported platforms: discord, dribbble, facebook, flickr, github, gitlab, instagram, linkedin, mastodon, medium, messenger, pinterest, quora, reddit, skype, snapchat, soundcloud, spotify, telegram, threads, tiktok, tumblr, twitch, twitter, vimeo, wechat, whatsapp, x, youtube
Pagination
Shiro offers three pagination types to control how additional posts are loaded. This feature lets you customize your site’s browsing experience to suit your readers’ preferences:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - Expand the
Site-wide
section. - Find
Pagination type
. - Choose Classic, Infinite Scroll, or Load More.
- Click
Save
.
App Mode
App Mode allows your site to be installed on Android and iOS devices as a Progressive Web App (PWA). This can improve user experience and engagement by providing a more app-like interface on mobile devices.
To enable App Mode:
- In Ghost Admin, go to Settings > Design & branding > Customize.
- Find the “Enable app mode” option under the “Site-wide” settings.
- Toggle the switch to enable App Mode.
- Click “Save” to apply the changes.
When enabled, visitors using compatible mobile browsers will be prompted to add your site to their home screen, creating an app-like shortcut for easy access.
Hero Section
The hero section is the first thing visitors see on your homepage. Customize it to make a strong first impression:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - Find
Cover image position
. - Choose Background, Left, or Right.
- Click
Save
.
To update site title and description:
- In Ghost Admin, go to
Settings
>General
. - Edit
Site title
andSite description
. - Click
Save
.
To set a cover image:
- In Ghost Admin, go to
Settings
>Design & branding
. - In
Brand
, findCover image
. - Click
Upload cover image
. - Click
Save
.
Featured Posts
Highlight your best content by displaying featured posts on your homepage:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - In
Homepage
, findShow Featured Posts Section
. - Toggle the switch on or off.
- Click
Save
.
To feature a post:
- In Ghost Admin, go to
Posts
. - Select a post.
- In the sidebar, find
Feature this post
. - Toggle the switch on.
- Click
Update
.
Hiding Featured Posts from Main Listings
For advanced users who want to remove featured posts from the main collection:
- In Ghost Admin, go to
Settings
>Labs
. - Click on the
Beta features
tab. - Find the
Routes
section. - Upload a
routes.yaml
file with the following content:
routes:
collections:
/:
permalink: /{slug}/
filter: featured:false
template: index
/featured/:
permalink: /featured/{slug}/
filter: featured:true
template: index
taxonomies:
tag: /tag/{slug}/
author: /author/{slug}/
This configuration creates a separate /featured/
URL for all featured posts and removes them from the main collection. After applying these changes, featured posts will only appear in the dedicated featured section and not in the main post listings.
Related Posts
Encourage readers to explore more of your content by showing related posts:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - In
Post
, findShow Related Posts
. - Toggle the switch on or off.
- Click
Save
.
Scroll Indicator
Help readers track their progress through your posts with a scroll indicator:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - In
Post
, findEnable Scroll Indicator
. - Toggle the switch on or off.
- Click
Save
.
Syntax Highlighting
Make your code snippets more readable with syntax highlighting:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - In
Post
, findEnable Syntax Highlighting
. - Toggle the switch on or off.
- Click
Save
.
Comments
Engage with your readers through comments. Choose between Ghost’s built-in system or Disqus:
For Ghost’s built-in comments:
- In Ghost Admin, go to
Settings
>Membership
. - Click
Edit
inAccess
. - Choose who can comment: Nobody, Paid members, or All members.
For Disqus comments:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - In
Post
, findDisqus Comments Shortname
. - Enter your Disqus shortname.
- Click
Save
.
Copyright Text
Customize your footer’s copyright notice:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - In
Site-wide
, findCopyright Text
. - Enter your desired text.
- Click
Save
.
If left empty, it will show: ”© [Your Site Title] [Current Year]. Published with Ghost.”
Post Styles
The theme offers 9 distinct post styles to customize the appearance of individual posts.
Default
Default + Background
Left Image
Left Image + Background
Right Image
Right Image + Background
Excerpt first + Cover
Excerpt first + Cover + Background
Background Only
Wide Post Cards
To make a post card appear wide in the feed, add the tag #mod-wide-card
to the post.
Custom Color Scheme for Post/Page
Each post or page can have a specific color scheme. To apply different color scheme try adding one of these tags to the post or page
#mod-theme-zensen
#mod-theme-blau
#mod-theme-sakura
#mod-theme-botan
#mod-theme-midnight
#mod-theme-dark
Custom Pages
Tags
A Tags page helps readers discover content by presenting all tags used on your site. This theme offers two variations: a grid layout and a list layout.
To create a Tags page:
- In Ghost Admin, create a new page.
- Give it a title (e.g., “Tags” or “Topics”).
- Open the page settings (gear icon in the top right).
- In the Template dropdown, select either
Tags Page [Grid]
orTags Page [List]
. - Publish the page.
Tags Page [Grid]
Tags Page [List]
The Grid layout presents tags as cards, while the List layout offers a alternative view. Choose the layout that best fits your site’s style and number of tags.
To customize tag appearance, edit individual tags in Ghost Admin to add descriptions, feature images, or accent colors. Remember to add your new Tags page to your site’s navigation menu for easy access.
Contact
The Contact page allows visitors to send messages directly through your site. It uses Formspree or Getform for form submissions.
To create a Contact page:
- In Ghost Admin, go to
Settings
>Design & branding
>Customize
. - Find
Contact form url
and enter your Formspree or Getform URL. - Create a new page and select
Contact
from the Template dropdown. - Publish the page.
Customize the page content to include additional contact information or instructions as needed.
Empty Template
The Empty template provides a blank canvas without header or footer. Use it for landing pages or custom layouts where you need full control over the page content.
To use the Empty template:
- Create a new page in Ghost Admin.
- In page settings, select “Empty” from the Template dropdown.
- Add your content and publish.
This template is ideal for creating unique, standalone pages within your Ghost site.
Members
Ghost’s Members feature allows you to turn your site into a membership business with sign-ups, paid subscriptions, and email newsletters. By default, Ghost uses Portal, a flexible membership framework, to handle all member-related interactions.
Ghost’s Portal system provides a seamless, out-of-the-box solution for membership functionality. It includes:
- Sign-up and sign-in flows
- Account management
- Subscription handling
- Newsletter subscriptions
With Portal, there’s no need to create separate pages for these functions. Ghost automatically injects the necessary components into your site.
To customize Portal’s appearance:
- In Ghost Admin, go to
Settings
>Membership
. - Scroll down to the Portal settings section.
- Here you can customize colors, button text, signup terms, and more.
While Portal provides a complete solution, some users might prefer to create custom member pages for a more tailored experience. If you choose this route, you can use the provided templates to create the following pages:
Account Page
The Account page shows members their account type and subscription details.
To create a custom Account page:
- In Ghost Admin, create a new page.
- Give it a title (e.g., “Account”).
- Open the page settings (gear icon in the top right).
- Set the page URL to
/account/
. - In the Template dropdown, select “Account”.
- Publish the page.
Signup & Signin Pages
These pages allow visitors to create accounts or log in to access member-only content.
To create custom Signup and Signin pages:
- Create two new pages in Ghost Admin.
- For the Signin page:
- Set the page URL to
/signin/
. - Select “Signin” from the Template dropdown.
- Set the page URL to
- For the Signup page:
- Set the page URL to
/signup/
. - Select “Signup” from the Template dropdown.
- Set the page URL to
- Publish both pages.
Membership Page
This page helps visitors compare your different pricing plans.
To create a custom Membership page:
- Create a new page in Ghost Admin.
- Give it a title (e.g., “Membership” or “Join Us”).
- In the page settings, select “Membership” from the Template dropdown.
- Publish the page.
To add pricing tiers:
- Go to
Ghost Admin
>Settings
>Tiers
. - Connect your Stripe account if you haven’t already.
- Click
+ Add tier
to create a new pricing tier. - Fill in the tier details (name, description, prices, benefits).
- Save the new tier.
- In
Settings
>Tiers
>Portal
settings, choose which tiers to display on your site.
To add an FAQ section to your Membership page, use the Toggle card in the Ghost editor to create FAQ items in the page content.
Note: Choosing Between Portal and Custom Pages
- Use Portal if you want a quick, easy, and automatically maintained membership system.
- Consider custom pages if you need more control over the design and layout of your membership flows.
Advanced
This section covers more technical aspects of working with the theme, including editing theme files and language translations.
Editing Theme Files
To edit the theme files:
- Download the theme ZIP file from Ghost Admin.
- Unzip the file on your local machine.
- Open the theme folder in your preferred code editor.
The theme uses SCSS for styling and TypeScript for scripts. You’ll need to set up a development environment to compile these files.
Setting Up the Development Environment
- Ensure you have Node.js installed on your system.
- Open a terminal/command prompt in the theme folder.
- Run
npm install
to install the required dependencies.
Working with SCSS and TypeScript
The theme uses Parcel to bundle and compile SCSS and TypeScript files. To work with these files:
- Make your changes in the
styles/*.scss
orscripts/*.ts
files. - Run
npm run dev
to start Parcel in watch mode. This will automatically compile your changes. - To build for production, run
npm run build
.
Building and Testing
After making changes:
- Run
npm run build
to create a production-ready version of the theme. - Use
npm run gscan
to check your theme for Ghost compatibility issues. - Zip the theme folder and upload it to your Ghost site to test.
Remember to thoroughly test all changes across different devices and browsers before deploying to a live site.
Important Files and Folders
styles/
: Contains all SCSS filesscripts/
: Contains all TypeScript filespartials/
: Contains reusable Handlebars template partslocales/
: Contains language translation files
Language Translations
This theme is translated into 46 languages. The translation files are located in the locales/
folder.
- 🇿🇦 Afrikaans af
- 🇧🇬 Bulgarian bg
- 🇧🇦 Bosnian bs
- 🇪🇸 Catalan ca
- 🇨🇿 Czech cs
- 🇩🇰 Danish da
- 🇨🇭 Swiss German de-CH
- 🇩🇪 German de
- 🇬🇷 Greek el
- 🇬🇧 English en
- 🌍 Esperanto eo
- 🇪🇸 Spanish es
- 🇫🇮 Finnish fi
- 🇫🇷 French fr
- 🏴 Scottish Gaelic gd
- 🇭🇷 Croatian hr
- 🇭🇺 Hungarian hu
- 🇮🇩 Indonesian id
- 🇮🇸 Icelandic is
- 🇮🇹 Italian it
- 🇯🇵 Japanese ja
- 🇰🇷 Korean ko
- 🇱🇹 Lithuanian lt
- 🇲🇰 Macedonian mk
- 🇲🇳 Mongolian mn
- 🇲🇾 Malay ms
- 🇳🇱 Dutch nl
- 🇳🇴 Norwegian Nynorsk nn
- 🇳🇴 Norwegian no
- 🇵🇱 Polish pl
- 🇧🇷 Brazilian Portuguese pt-BR
- 🇵🇹 Portuguese pt
- 🇷🇴 Romanian ro
- 🇱🇰 Sinhala si
- 🇸🇰 Slovak sk
- 🇸🇮 Slovenian sl
- 🇦🇱 Albanian sq
- 🇷🇸 Serbian sr
- 🇸🇪 Swedish sv
- 🇹🇭 Thai th
- 🇹🇷 Turkish tr
- 🇺🇦 Ukrainian uk
- 🇺🇿 Uzbek uz
- 🇻🇳 Vietnamese vi
- 🇹🇼 Traditional Chinese zh-Hant
- 🇨🇳 Chinese zh
To use a different language:
- In Ghost Admin, go to Settings > General.
- Set the “Site language” to the desired language code (e.g., “es” for Spanish).
To modify translations:
- Open the corresponding language file in the
locales/
folder (e.g.,es.json
for Spanish). - Edit the translations as needed.
- Save the file and rebuild the theme.