This is a Netlify function package that will catch a Ghost webhook and modify the post to include the tag required for generating a podcast RSS feed out of Ghost. Use it to use Ghost as a single platform (er... ok, Netlify too) for publishing your podcast.
- Modify your theme to include an RSS feed. I largely followed this tutorial (https://ghost.org/tutorials/custom-rss-feed/), but I store the whole value of the line in codeinjection_foot, not in the Facebook description string.
- Install this package on Netlify. Provide it with the three required environment variables.
- Add web hooks for post created and post updated, directing them to the Netlify function.
- Uses built-in Ghost webhook functionality.
- Checks to see the the post has a specific tag (podcast by default) and that the post's codeinjection_foot is blank.
- Parses the post content, finds the first link (won't work with iframes) and builds the enclosure line of the RSS.
- Uses the Ghost Admin API to update the post.
- Improve security. Respond to receiving a webhook call by pulling the post body from the Ghost API, instead of trusting the webhook to be correct. (Reduces the webhook to a trigger, not a source of information to be acted on at the Admin level.)