Add more options in general but keeping it simple

Hi,

I’m using ghost since a few month and I love it. I have to say it : more than enjoying it, I almost feel the obligation to say “thanks”. There isn’t any CMS that allowed me to write my articles. Other CMS are impractical, fuzzy, overcomplicated. I never could focus on my only goal -which is writing- before ghost. The key to that is the philosophy of ghost : as much as I understand, the CMS is developped to stay simple, light and content-focused.

So ghost simplicity doesn’t mean that it’s not powerful but it’s really the key. It’s a strength but it also can be weakness, sometimes.let me explain : I think that ghost, in a way, lacks customization. And I think that I have the concept of the solution. Something that could be very powerful. Unfortunately, I don’t have the technical knowledge to do it.

What I’d like is :

  • To be able to customize pages individually with other things than just the main content. For example, if I wanted to be able to place a bit of text in a div next to the main content’s container and to make it editable individually for each new post. Or if I wanted to add multiple options that can be enabled or disabled separately. I can’t do that with templates. Because if I want to be able to choose between thre size of titles and to choose if my page is an article or a podcast, I’d have to make six templates. I can however make a JS that will adapt the pages’ layout according to selected options and add vars like “title=1/2/3”, “post_type=1/3”, “Sub-title= I secretely eat my raviolis directly into the can without cooking thel” or “show_featured_image=true” but that’s less user friendly than just opening the side section in the editor and doing my things with a proper HTML-made form.

  • To be able to create custom cards without having to edit HTML. So if I want to create a quote card that allows me to quote an author and to add his name in a smaller, straight font -rather than italic- and place it at a specific place relative to the quote, I don’t have to deal with HTML tags. And if I want to improve the readability in the editor when using the cards, I can specify parts of my card that will be ignored when scrapping in displaying my article. Right now, as HTML cards are, I have a to cut my snippet in two and make a sandwich with them and regular text. The first one is the opening of tags like divs and the last one is their closing. Also, instead of using proper tags to differenciate functions of the different pieces of text in the middle of my opening and closing snippets, I also have to use some tricks and count my p elements to know -say- which is the title of my card and which one is the content.

  • Third thing is optimizing storage space by allowing to reuse images that already have used in previous articles. Eventually, being asked to name then when uploading them or associating them with the articles tags. And creating a gallery section where you can simply search, delete or replace images.

I have an idea for each of the two first issues. And I think that it respects ghost’s principle / philosophy / mentra of simplicity. It won’t add anything to the ghost panel and therefore this one will stay as light as it actually is.

  • The first one : extend the themes’ custom fields system. When you create a post template -for example-, you’d be able to specify custom fields used for articles. So when ghost takes your theme, it knows that it’ll have to add fields in the side panel of the editor in order to fill and select the custom content / settings.

  • The second one : create a blue-print system that allows themes to add custom cards. That’d probably a json form-factor or a hbs one. That could be super powerful. Because it doesn’t add cards that are not useful to a majority of persons but in the case when someone creates a theme for a specific blogging activity (photography, or podcasts), it would allow the webdesigner to provide tools that are revealant to his niche of users. If I’m a simple photographer and I don’t know much about code, then this will allow me to choose a theme as a all-in one solution : it looks like a photographer’s website and it fulfills the specific needs of my field of work. If I’m a journalist and I have other writers working with me, I don’t have to explain them all my tricks like “Ok look : if you want to make a quote, you take this snippet, the you write your quote and then you have to jump two empty lines so my css understands that after two empty p that’s the author and it’ll apply a specific formatting to. And then you select this other snippet to close it. And if you want to add a recommanded article you… bla bla bla”.

I know that these subjects have been discussed a long time ago but all the forum posts that I saw were just users asking if it will come or not. Mine is quite the same, in a way, but I’m also bringing the idea of an elegant solution, with it.

What do you think ?