Custom fields for posts


For example, to have caption for the featured image (using <figcaption> in the theme with the custom field), and many other possible things.

It’s currently a feature tagged “later”, with the author of the above issue offering to work on it.

Change Canonical URL
Casper Theme - Post Thumbnails Impacting Site Speed
Link Post Types

I would go even further than custom fields and say that Ghost could use custom content types (ideally with an admin interface to add them, on a concept similar to for WP)…

I think this would be the feature that will allow Ghost to move beyond just a publishing platform for blogs and become truly a platform for journalism as it would allow small and medium sized publishers to build their websites by offering them a flexible content structure.

Just my 2 cents :wink:


The Custom Post Type that is now available on Wordpress is pretty much a work in progress for Ghost too. Check this out:


I’ve seen that, but I guess I only browsed it as I was left with the impression it’s only about homepage and categories.


An input or similar to allow the automatically generated canonical URL to be overridden on a per-post basis.


As far as I know this feature exists. While editing your post click the gear icon in the top right -> change the text under Post URL


Correct, but to be more specific the desire is to be able to change the canonical URL independently from the post URL. The posts from my pre-imported-to-Ghost blog were under the slug /blog/year/post-title, but after the import I now have them at /post-title. If I could change the canonical URLs independently then I could recoup the share stats associated with those old URLs.


I came looking for exactly this. I run a few different blogs with some slight overlap in content and would like to edit canonical urls for cross posting purposes. It would be great as a built-in input underneath “Post URL”.


A lot of really good blogs do link posts, a great example being Daring Fireball.

Currently, Wordpress has an easy plugin for this, which can be found here. Unfortunately, Ghost has no easy way to do this (without hacking together something in the core services). Even looking online, there seems to be one blog post talking about how you might achieve this, but it’s from years ago.

I was wondering if this was ever going to be a native feature to Ghost?