I see there’s an API for reading FROM a Ghost blog.
But I was wondering… would there be any reasonably easy way of, say, someone dropping file (perhaps with template names like page1.md, page2.md) intro Dropbox, and having Ghost render that as the page content?
And, to be clear, I am NOT talking about hard coding or editing the theme each time. I’m sure some theme editing will need to be do one time, but I’m thinking of the following:
“If user hits myblog.com/page1 then read from /home/Dropbox/site1/page1.md and display as page wrapped in normal theme”.
OR if not, then is there a part of the API which I missed, which can write a new post? So for example, node script would watch for updated file in /home/Dropbox/site1/page1.md and then read file content and use Ghost api to rewrite the post?
Not really, you’d be better off writing your own tiny node app I think? I’m not sure I’m following the use case - you want to use Ghost without the admin interface to render static files?
OR if not, then is there a part of the API which I missed, which can write a new post?
There’s the private API which isn’t documented but is usable if you need to. Ghost’s admin is a single page app that does everything via Ghost’s API so you can inspect the network requests to see what you need to send.
If you go that route just be aware that it’s private because it’s subject to change without notice. We have plans to revisit the API fairly soon to make the authentication process easier.
Thanks - OK, if the use case helps explain it:
In the UK we have many small charities which produce talking newspapers (weekly recordings of local news) for blind people. Mostly run by retired technophobes, often produced on machines running XP.
Ghost is great because it’s simple and markdown isn’t complicated to grasp. But for many, even an admin system as easy as Ghost’s proves too complex.
So the idea is, a Ghost website would be written, and then one or two placeholders pages would be there for a simple .md/text file which would be used to describe what was in that week’s edition, to be dropped into Dropbox along with the audio files.
So I guess I would just run a node script to watch for an updated file, read the contents, and use the private API to write them into Ghost.
(Yes, I could just use AJAX to read and inject a file, but js and dynamic page content isn’t too favoured in the screenreader world. It has to degrade right back to being readable with no CSS or js)
And the nice thing about somehow automatically importing it into Ghost “properly” (using this private API) is that it would then be available to add or edit using either the admin or the plain file.