Turn new WordPress posts into podcast-style audio in Dropbox
Every hour, narrate your latest WordPress articles with an expressive voice, save the audio to Dropbox, and share the link in Slack.
Build me a code-based workflow that runs on a cron trigger every hour and turns each new WordPress blog post into podcast-style audio.
On each run, use the WordPress List Posts operation to fetch posts with status=published that were created since the last run. Persist the last-run timestamp in workflow state so the same post is never narrated twice.
For each new post, do the following:
1. Build a narration script that starts with the post title as an intro line, followed by the post body (stripped of HTML).
2. If the script is longer than 5,000 characters, split it into paragraph-sized chunks so each chunk stays under the limit. Otherwise keep it as a single chunk.
3. For each chunk, call Hume's Text-to-Speech (File) operation using a fixed narrator voice ID from my Hume Voice Library. Capture the returned audio bytes.
4. Upload the audio bytes to Dropbox using the Upload File operation, saving them under /blog-audio/. Use a filename like <post-slug>-<chunk-number>.mp3 (e.g. my-post-slug-01.mp3, my-post-slug-02.mp3) so multi-part posts play in the correct order. Single-chunk posts can just use <post-slug>.mp3.
5. After all chunks for the post have finished uploading, post an announcement in my #content Slack channel using the Slack Bot Send a Message operation. Include the post title, a link to the Dropbox file (or the folder when there are multiple chunks), and the original WordPress post URL.
Trigger: cron, every hour.
The narrator voice ID from my Hume Voice Library, the target Dropbox folder path, and the Slack channel should be exposed as workflow inputs so I can change them without editing code.
Additional information
What does this prompt do?
- Checks WordPress every hour for freshly published posts and turns each one into a podcast-style audio clip.
- Uses an expressive voice from your Hume Voice Library so the narration sounds like a real host, not a flat robot read.
- Saves each audio file to a blog-audio folder in Dropbox and posts an announcement in your #content Slack channel with the Dropbox link and the original post URL.
- Automatically splits long articles into numbered chunks so listeners can play them in order like a mini episode.
What do I need to use this?
- A WordPress site login with permission to create an Application Password
- A Hume account with a saved narrator voice in your Voice Library
- A Dropbox account with room in a blog-audio folder
- A Slack workspace and the channel you want the announcements posted to
How can I customize it?
- Change the hourly schedule to fit however often you publish.
- Swap in a different Hume voice, or pick a different voice per post category so different topics get different narrators.
- Point the uploads at a different Dropbox folder, or send the announcement to a different Slack channel.
- Adjust the length at which long posts get split into chunks if you prefer longer or shorter audio segments.
Frequently asked questions
How natural does the audio actually sound?
Do I have to trigger anything manually when I publish a new post?
What happens with really long articles?
Will it re-narrate old posts every time it runs?
Can I send the audio somewhere other than Dropbox?
Related templates
Every weekday at 8am, your billing team gets a Slack rundown of yesterday's failed Braintree charges, the revenue at risk, and who to chase first.
Every weekday morning, roll up your sprint's work items into a clear per-person standup summary and post it to your team's Slack channel before you meet.
Every three hours we scan Braintree for new disputes and chargebacks, open a tracked ticket with a tailored evidence checklist, and alert your team in Slack before the response deadline slips.
Every Tuesday, get a ready-to-review preview of your club's next match, complete with form, head-to-head history, players to watch, and a predicted score.
Every weekday morning we check your most important Databricks tables for freshness and data problems, and ping Slack only when something actually looks wrong.
Every Monday, automatically find which employee accounts on your company domain turned up in data breaches and get a plain-English briefing in Slack.
Give your blog a voice, on autopilot.
Connect WordPress, Hume, Dropbox, and Slack once, and every new post ships as a listen-ready audio drop.