Skip to content

Ghost Editor — Koenig Editor, Markdown, Cards and Publishing Workflow

DodaTech Updated 2026-06-28 12 min read

In this tutorial, you'll master the Ghost Koenig editor — a card-based content editor that combines markdown, rich media, and structured blocks to create beautiful posts and pages with a seamless publishing workflow.

What You'll Learn

  • How the Koenig editor differs from traditional content editors
  • Creating and arranging content cards (text, image, gallery, embed, bookmark)
  • Using markdown within the editor
  • The slash command menu for quick card insertion
  • Managing post settings: excerpt, feature image, URL slug, metadata
  • The publishing workflow: draft, review, schedule, publish, newsletter
  • Saving and managing post revisions
  • Publishing settings for SEO and social sharing

Why It Matters

The editor is where you spend most of your time as a Ghost user. The Koenig editor is fundamentally different from the WordPress Gutenberg editor or traditional rich-text editors — it uses a card metaphor where each content block is a self-contained unit. Understanding how cards work, how to rearrange them, and how the publishing workflow integrates with newsletters saves you hours of frustration and helps you produce better-formatted content faster.

Real-World Use

A travel blogger writes a weekly destination guide. She uses the Koenig editor to create a hero image card, a gallery card for photos, a bookmark card linking to her hotel recommendations on Booking.com, a callout card for travel tips, and a markdown card for the main article text. When she publishes, Ghost automatically sends the post as a newsletter to her subscribers. The entire workflow — from writing to email delivery — happens in one tool.

Learning Path

flowchart LR
  A["What is Ghost?"] --> B["Ghost Architecture"]
  B --> C["Ghost CLI"]
  C --> D["Ghost Editor
You are here"]:::current D --> E["Ghost Installation"] classDef current fill:#38bdf8,color:#0f172a,stroke-width:2px

What is the Koenig Editor?

Koenig is Ghost's card-based content editor, named after the character from the classic TV series "The Night Stalker" — a nod to the Ghost team's love of 1970s television. The editor was introduced in Ghost 2.0 and completely redesigned in Ghost 3.0.

Think of the Koenig editor like building with LEGO bricks. In a traditional editor, you write in a single text area and use buttons to format text or insert media. In Koenig, every piece of content is a separate brick — a text brick, an image brick, a gallery brick, an embed brick. You can add bricks anywhere, reorder them by dragging, and delete them individually without disturbing the rest of your content.

Understanding Cards

Cards are the fundamental building blocks in Koenig. Each card represents a specific type of content. When you open the editor, you start with an empty document. You add cards one by one to build your page.

Available Card Types

Card Type Purpose Example Use
Paragraph Standard text (markdown) Article body text
Image Single image with caption Feature images, diagrams
Gallery Multiple images in a grid Photo collections
Header Section headings H2, H3, H4 headings
Divider Horizontal rule Separating sections
HTML Raw HTML Custom embeds, forms
Code Code block with syntax highlighting Programming tutorials
Callout Highlighted text box Tips, warnings, notes
Markdown Dedicated markdown editor Complex formatting
Button Styled call-to-action button Newsletter signup, links
Embed External content via URL YouTube videos, tweets
Bookmark Rich link preview Curated link collections
Toggle Expand/collapse section FAQs, advanced information
Video Video upload or URL Course content, demos
File Downloadable file PDFs, resources
Product Product card with pricing Digital products, books
Audio Audio player Podcast episodes
Email Email-only content Exclusive subscriber content
Signup Email signup form Newsletter growth
Call to Action Promotional card Membership offers

Adding Cards

There are several ways to add a card:

1. The plus button: Click the + button that appears between cards to open the card menu.

2. The slash command: Type / in an empty line to open the slash command menu, then type the card name to filter.

/image     - Insert an image
/gallery   - Insert a gallery
/embed     - Insert an embed
/code      - Insert a code block
/callout   - Insert a callout box
/button    - Insert a button

3. Paste a URL: Pasting a URL from a supported service (YouTube, Twitter, Vimeo, etc.) automatically converts it to the appropriate embed card.

4. Type and select text: Select existing text and choose a card type from the toolbar.

Example: Building a Post with Cards

Here is what a typical tutorial post looks like in the Koenig editor:

[Header Card]      "Ghost Editor — Complete Guide"
[Image Card]       Featured image showing the Koenig editor UI
[Paragraph Card]   Introduction paragraph
[Callout Card]     "Tip: Use slash commands for faster editing"
[Header Card]      "Getting Started"
[Paragraph Card]   Explanation of cards
[Image Card]       Screenshot of the card menu
[Gallery Card]     Three screenshots showing different card types
[Code Card]        Example code block
[Bookmark Card]    Link to Ghost documentation
[Button Card]      "Try Ghost Free"

You can rearrange cards by hovering over the card handle (six dots on the left) and dragging up or down. The order you set in the editor determines the order on the published page.

Working with Markdown

Koenig supports markdown at two levels:

Inline Markdown in Paragraph Cards

Within any paragraph card, you can use standard inline markdown:

**bold text**
*italic text*
~~strikethrough~~
`inline code`
[link text](https://example.com)

Markdown Cards

For longer markdown sections or complex formatting like tables, use the dedicated Markdown card:

| Feature | Ghost | WordPress |
|---------|-------|-----------|
| Editor | Koenig | Gutenberg |
| Language | Node.js | PHP |
| Memberships | Built-in | Plugin |

- Bullet point one
- Bullet point two
- Bullet point three

1. Numbered item
2. Numbered item

The markdown card has its own editor with syntax highlighting and a preview toggle.

Post Settings

The right sidebar in the editor (or the Settings panel) contains all post-level settings.

Publication Settings

  • Post URL: Customize the URL slug (defaults to the title)
  • Publish Date: Set a specific publish date or schedule for the future
  • Featured: Mark the post as featured (appears in featured sections)
  • Members Access: Control who can read this post (public, members-only, paid-members-only)
  • Newsletter: Toggle whether this post is sent as an email

SEO Settings

  • Meta Title: Custom title for search results (defaults to post title)
  • Meta Description: Custom description for search snippets
  • Canonical URL: If this content appears elsewhere, set the original source URL
  • Structured Data: Ghost automatically adds JSON-LD

Social Sharing

  • Twitter Title: Custom title for Twitter cards
  • Twitter Description: Custom description for Twitter cards
  • Twitter Image: Custom image for Twitter cards
  • Facebook Title: Custom title for Open Graph
  • Facebook Description: Custom description for Open Graph
  • Facebook Image: Custom image for Open Graph

Feature Image

The feature image appears at the top of the post and in post previews. You can upload, set a focal point (click where the important part of the image is), and add a caption.

Publishing Workflow

Ghost has a clean publishing workflow with clear states.

Draft

When you create a new post, it starts as a draft. Drafts are only visible to you and other authors in the admin panel. You can save drafts without publishing.

Scheduled

Set a future publish date and the post moves to "Scheduled" status. Ghost publishes it automatically at the specified time. You can edit or cancel scheduled posts before they go live.

Published

Published posts are visible on your site according to their access settings. You can unpublish a post to return it to draft status.

Email/Newsletter

When you publish a post with the newsletter toggle enabled, Ghost sends it as an email to your subscribers. This happens automatically at the moment of publication (or at the scheduled time).

flowchart LR
  A["Create Draft"] --> B["Edit & Format"]
  B --> C{"Publish now?"}
  C -->|"Yes"| D["Published + Newsletter"]
  C -->|"Schedule"| E["Scheduled"]
  E --> F["Auto-publish at time"]
  F --> D
  D --> G["Unpublish"]
  G --> B

  style D fill:#38bdf8,color:#0f172a

Post Revisions

Ghost automatically saves revisions as you edit. You can access the revision history from the editor menu and restore any previous version. This is useful for:

  • Recovering from accidental deletions
  • Comparing versions
  • Undoing changes

Publishing from Mobile

Ghost has a mobile-optimized editor that works in any browser. You can write, edit, and publish from your phone or tablet without installing a native app. The mobile interface uses the same card-based approach but with a simplified toolbar.

Keyboard Shortcuts

The Koenig editor supports several keyboard shortcuts for efficient editing:

  • Ctrl+Z — Undo
  • Ctrl+Shift+Z — Redo
  • Ctrl+B — Bold
  • Ctrl+I — Italic
  • Ctrl+K — Insert link
  • / — Open slash command menu
  • Enter — Add new card
  • Backspace on empty card — Delete card
  • Arrow Up/Down — Navigate between cards

Common Mistakes

  1. Forgetting to set member access levels: Beginners publish posts without setting the member access level, and paid content ends up visible to everyone. Always check who can see the post before publishing, especially for paid membership content.

  2. Using paragraph cards for everything: The default card type is the paragraph card, but it is not always the best choice. Beginners type everything in paragraph cards, including code snippets, quotes, and lists. Use the appropriate card type for each content type — code cards for code, callout cards for tips, markdown cards for tables.

  3. Not using the newsletter toggle deliberately: Every post has its newsletter toggle set to the default. Beginners accidentally send half-finished posts as emails. Always check the newsletter toggle before publishing, and use "Email only" content for exclusive subscriber messages.

  4. Copy-pasting from Word without cleaning: Pasting from Microsoft Word carries hidden formatting that can break the Koenig editor. Use the "Paste as plain text" option or paste into a markdown card first, then reformat.

  5. Ignoring SEO settings in the editor: Ghost makes SEO settings easy, but beginners publish without setting meta descriptions or feature images. These directly impact click-through rates from search results. Always set at minimum a meta description and feature image.

Practice Questions

  1. What is the difference between a paragraph card and a markdown card in Koenig? Answer: A paragraph card supports basic inline formatting (bold, italic, links) and is best for standard body text. A markdown card provides a dedicated markdown editor with syntax highlighting and is best for complex formatting like tables, code blocks, and extensive lists.

  2. How do you add a YouTube video to a Ghost post? Answer: Paste the YouTube video URL into the editor on its own line. Ghost automatically converts it to an embed card. You can also use the embed card manually and enter the URL there.

  3. What happens when you publish a post with the newsletter toggle enabled? Answer: Ghost publishes the post on your site and simultaneously sends it as an email to all subscribers who have opted in to newsletters. The email uses your theme's post template styling.

  4. Challenge: Create a tutorial post in Ghost using at least 8 different card types. Include an image card, a gallery card (3+ images), a callout card, a code card, a bookmark card, a button card, and a toggle card. Publish it, then revise the post settings to add a custom meta description, a feature image with focal point, and a canonical URL.

FAQ

Can I use the Ghost editor offline?

The Ghost editor requires a connection to your Ghost server because it is a web-based application. There is no offline mode. However, you can draft content in a local markdown editor and paste it into a markdown card when you reconnect.

Does the Koenig editor support footnotes?

Footnotes are not natively supported in the Koenig editor. You can create them manually using HTML cards with superscript links and a footnotes section at the bottom, but there is no dedicated footnote card.

Can I collaborate with other authors in real time?

Ghost does not support real-time collaborative editing like Google Docs. Multiple authors can work on different posts simultaneously, but only one person can edit a specific post at a time. Changes are saved on the server and visible to other authors on refresh.

How do I add custom CSS to a specific post?

You cannot add per-post CSS directly in the editor. You would need to use the Code Injection feature in Ghost Admin settings (site-wide header/footer) or create a custom theme with post-specific CSS classes.

Does Ghost support content reuse across posts?

Ghost does not have a reusable blocks system like WordPress. Each post's content is independent. You can duplicate content using copy-paste between posts, but there is no shared content library.

Mini Project

Your task: Write and publish a complete blog post using advanced Koenig editor features.

  1. Create a new post titled "Getting Started with Ghost CMS — A Quick Guide."
  2. Include at least one of each card type: header, paragraph, image, gallery, callout, code, bookmark, button.
  3. Set a feature image with a focal point on the most important area.
  4. Configure the SEO settings: custom meta title, meta description, and Facebook Open Graph image.
  5. Set the member access level to "Public" and disable the newsletter toggle.
  6. Schedule the post to publish one hour from now.
  7. Before it publishes, revise the excerpt and URL slug.

This exercise gives you hands-on practice with every feature of the Koenig editor and the publishing workflow.

What's Next

Now that you can create content in Ghost, it is time to set up a full production installation:

Continue to Lesson 5: Ghost Installation — Set up Ghost on a production server with Nginx, SSL, and Process management.

Related lessons:

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro