Installing a Theme

All CCLY Studio themes are delivered as a .zip file. You upload this directly to Ghost — do not extract it first.

Uploading Your Theme

  1. Download the .zip file from your purchase confirmation email (via Lemon Squeezy).
  2. Log in to your Ghost Admin panel at yourdomain.com/ghost/.
  3. Go to Settings → Design → Change theme.
  4. Click Upload theme and select the .zip file.
  5. Once uploaded, click Activate.
Tip: Ghost accepts the zip file directly. Do not unzip it before uploading.

Updating to a New Version

When a new version is released, you'll receive an email with the updated .zip file. To update:

  1. Download the new .zip file.
  2. Go to Settings → Design → Change theme.
  3. Click Upload theme and select the new zip.
  4. Ghost will replace the existing theme files automatically.
Note: Updating a theme preserves all your Ghost content (posts, pages, members, settings). Only the theme's template files, CSS, and JavaScript are replaced. Custom settings values you've configured in Design → Theme are also preserved.

Need to re-download your theme? You can always get the latest version from your Lemon Squeezy account: How to download from Lemon Squeezy.

Ghost Version Requirements

All CCLY Studio themes require Ghost 5.0 or later. We recommend Ghost 6.x for the best experience.

To check your Ghost version, go to Settings → About in Ghost Admin.

If you're self-hosting, you can update Ghost with:

ghost update

If you're on Ghost(Pro), updates are applied automatically.

Ghost Settings

After installing a theme, configure these essential Ghost settings to get the most out of your site.

Site Title, Description & Logo

Go to Settings → General to set:

  • Site title — Displayed in the header and browser tab.
  • Site description — Shown in the footer and used for SEO meta descriptions.

For branding, go to Settings → Design → Brand:

  • Publication logo — Replaces the text title in the header. Recommended: SVG or PNG, max height 40px.
  • Publication icon — Displayed as a favicon and next to the site title when no logo is set. Recommended: square PNG, at least 60×60px.
  • Publication cover — Used as a fallback Open Graph image for social sharing.
  • Accent color — Used by Ghost's built-in portal modals (signup, signin). This does not affect the theme's color palette.

Social Media Links

Go to Settings → General → Social accounts to add your Facebook and X (Twitter) URLs.

CCLY themes display these as icon links in the site footer. If no social URLs are set, only the RSS feed icon is shown.

For additional social links (Instagram, YouTube, LinkedIn, etc.), add them to your secondary navigation menu with the full URL.

Theme-Specific Settings

Each CCLY theme includes custom settings accessible in Settings → Design → Theme (or click Change themeCustomize on your active theme).

Common settings across themes include:

  • Color scheme — Light, Dark, or Auto (follows system preference).
  • Dark mode toggle — Show/hide the sun/moon toggle in the header.
  • Reading time — Show/hide estimated reading time on posts.

Theme-specific settings (testimonials, logos, layout options) are documented on each theme's dedicated documentation page.

Posts & Pages

Ghost distinguishes between posts and pages:

  • Posts — Blog articles. Appear in feeds, tag archives, and author pages. Have tags, authors, and featured flags.
  • Pages — Static content (About, Contact, etc.). Do not appear in feeds. Access via navigation links.

Featured posts: Toggle the star icon in the post editor to mark a post as featured. Most CCLY themes display the latest featured post in a prominent hero section on the homepage.

Tags: Tags organize content into categories. Create tags in Tags in the Ghost Admin sidebar. Each tag gets an archive page at /tag/slug/. Add a description to each tag for best results — themes display these in navigation dropdowns and archive headers.

Membership Setup

Ghost has built-in membership and subscription support. Here's how to configure it with CCLY themes.

Enabling Membership

  1. Go to Settings → Membership.
  2. Choose your access model:
    • Nobody — Memberships disabled. Subscribe buttons hidden.
    • Free — Readers can sign up for free. No paid tiers.
    • Paid — Readers can subscribe for free or pay for premium content.

Once enabled, CCLY themes automatically show:

  • Subscribe button in the header (for non-members).
  • Sign in link in the header (for non-members).
  • Account link in the header (for signed-in members).
  • Subscribe email forms in the CTA section and social proof area.

Connecting Stripe for Paid Subscriptions

To accept payments, connect Stripe:

  1. Go to Settings → Membership → Stripe.
  2. Click Connect with Stripe and follow the authorization flow.
  3. Once connected, configure your pricing tiers under Settings → Membership → Pricing.

Ghost handles all billing, receipts, and subscription management. Members can manage their subscription from their account page.

Test mode: Use Stripe's test mode during setup. Go to your Stripe dashboard and toggle "Test mode" before connecting to Ghost. Use card number 4242 4242 4242 4242 with any future expiry date to test payments.

Content Gating & Paywall

Control who can read each post using the Post access setting in the post editor:

  • Public — Visible to everyone. No paywall.
  • Members only — Free and paid subscribers can read. Non-members see the paywall.
  • Paid members only — Only paid subscribers can read. Free members and non-members see the paywall.

CCLY themes display a styled paywall component with:

  • A blurred content preview above the paywall.
  • A lock icon next to gated post titles on listing pages.
  • An adaptive CTA button: "Subscribe now" for non-members, "Upgrade your plan" for free members.

No code changes are needed — just set the access level per post and the theme handles everything automatically.

Portal (Signup & Login)

Ghost Portal is the built-in signup/login UI. It appears as a modal overlay when readers click Subscribe, Sign in, or Account links.

Configure Portal in Settings → Membership → Portal:

  • Name field — Optionally ask for a name during signup.
  • Signup notice — Custom text shown after signup (e.g., "Check your inbox!").
  • Portal button — Ghost can show a floating button in the bottom-right corner. CCLY themes have their own subscribe buttons, so you can disable this if it feels redundant.
Tip: To disable the floating Portal button, go to Settings → Membership → Portal → Show Portal button and toggle it off.

Custom Routes

Ghost supports custom routing via a routes.yaml file. This allows you to create custom pages, filtered collections, and redirects.

What is routes.yaml?

routes.yaml controls Ghost's URL routing. It defines:

  • Routes — Custom URLs that render a specific template (e.g., /newsletter/ renders a filtered collection).
  • Collections — Groups of posts filtered by tag, author, or other criteria.
  • Taxonomies — URL patterns for tags and authors (usually left as defaults).

Uploading routes.yaml

  1. Go to Settings → Labs in Ghost Admin.
  2. Under Routes, click Upload routes YAML.
  3. Select your routes.yaml file.
Download first: Before uploading a new routes.yaml, click Download current routes.yaml to back up your existing configuration.

Common Examples

Example 1: Newsletter archive filtered by tag

collections:
  /newsletter/:
    permalink: /newsletter/{slug}/
    filter: tag:newsletter
  /:
    permalink: /{slug}/
    filter: tag:-newsletter

This creates a separate /newsletter/ section for all posts tagged "newsletter", and excludes them from the main homepage feed.

Example 2: Custom page with a specific template

routes:
  /portfolio/:
    template: custom-portfolio
    data: page.portfolio

This renders the custom-portfolio.hbs template at /portfolio/ and injects data from a Ghost page with the slug "portfolio".

FAQ

Answers to the most common questions about CCLY Studio themes.

Do CCLY themes work with Ghost(Pro)?

Yes. All CCLY themes work with Ghost(Pro) hosted plans. Upload the .zip file in Ghost Admin just like any other theme.

Do they work with self-hosted Ghost?

Yes. Any Ghost 5.0+ installation supports CCLY themes. We recommend Ghost 6.x for the latest features.

Can I change the theme colors?

Each theme has a carefully designed color palette. Ghost's accent color setting (in Design → Brand) controls the Portal modals but does not change the theme's colors.

To customize theme colors, you can add custom CSS via Settings → Code Injection → Site Header:

<style>
  :root {
    --color-accent: #your-color;
    --color-link: #your-color;
  }
</style>

Each theme's documentation includes a full Design System section listing every CSS variable with its default value, a color swatch, and usage notes. See: Vestige Design System.

Can I change the fonts?

Yes. Ghost 6 includes a built-in font picker in Settings → Design → Brand → Typography. Changing fonts there automatically overrides the theme's heading and body fonts.

For custom web fonts not in Ghost's picker, use Code Injection to load them and override the CSS variables:

<link href="https://fonts.googleapis.com/css2?family=YourFont&display=swap" rel="stylesheet">
<style>
  :root {
    --font-heading: 'YourFont', serif;
    --font-body: 'YourFont', sans-serif;
  }
</style>

How do I get theme updates?

You'll receive an email from Lemon Squeezy when a new version is released. Download the new .zip and upload it in Ghost Admin → Design → Change theme → Upload theme.

You can also download the latest version anytime from your Lemon Squeezy account. See How to download the latest theme versions from Lemon Squeezy for a step-by-step guide.

Updates never overwrite your content, members, or site settings. Only the theme's template files are replaced.

How do I get support?

Email us at p@ccly.dev with your order number and a description of the issue. We typically respond within 24 hours on business days.

Support includes: installation help, bug fixes, and questions about documented features.

Support does not include: custom CSS modifications, new feature development, or third-party integration setup.

What is the refund policy?

We offer a 14-day refund policy. If the theme doesn't work for your use case, email us within 14 days of purchase for a full refund. No questions asked.

How does licensing work?

Each license covers one Ghost site:

  • Standard ($89) — 1 site, lifetime updates, 6 months support.
  • Pro ($119) — 3 sites, lifetime updates, 12 months support.

"Lifetime updates" means you receive every future version of the theme at no additional cost. Support can be renewed after expiry for $29 per 6 months.