Translate new WordPress posts into localized drafts
Every weekday morning, turn each newly published post into review-ready German, French, and Spanish drafts, tagged by language and ready for an editor.
Every weekday at 8am, check my WordPress site for blog posts that were published since the last time this workflow ran. Use WordPress List Posts filtered to status 'publish' and ordered by date with the newest first, and only take posts whose publish date is after the previous run so the same post never gets translated twice.
For each new post, translate both the title and the full body into my target-market languages: German, French, and Spanish. Use DeepL Translate Text for every translation. Because the WordPress body is HTML, set tag_handling to html so all formatting (headings, links, lists, bold, and images) survives the translation intact. DeepL target language codes accept regional variants, so use codes like DE, FR, ES (or PT-BR if I add Brazilian Portuguese later).
Skip the post's own source language. Let DeepL detect the source language of the post, and if the post is already written in one of the target languages, do not translate it back into itself. Only produce drafts for the remaining target languages.
For every remaining language, create a localized draft back in WordPress using Create a Post with status set to draft. Carry over the translated title and the translated HTML body exactly. Tag each draft with the locale (for example a 'de', 'fr', or 'es' tag) so an editor can filter and find it, and note in the draft which language it targets, for example by prefixing the title with a [DE], [FR], or [ES] marker. Leave everything as a draft so an editor can review and publish when it is ready.
At the end of each run, keep track of the latest publish date processed so the next run only picks up newer posts, and note how many source posts were found and how many localized drafts were created per language.
Additional information
What does this prompt do?
- Checks your WordPress site each weekday morning for posts published since the last run.
- Translates the title and full article into your target-market languages, with German, French, and Spanish set up out of the box.
- Keeps all formatting intact, including headings, links, lists, and images.
- Saves each translation back to WordPress as a draft, tagged and labeled by language, so an editor can review before anything goes live.
What do I need to use this?
- A WordPress site where you can create posts, with a login that can save drafts.
- A DeepL account for the translations.
- The list of languages you want to publish in.
How can I customize it?
- Change the schedule, for example run once a week instead of every weekday.
- Swap or add target languages, including regional variants like Brazilian Portuguese.
- Adjust how each draft is labeled, tagged, or which categories it lands in.
Frequently asked questions
Will my formatting survive the translation?
Does it publish the translations automatically?
What languages can it translate into?
Will it translate a post into the language it is already written in?
Does it re-translate the same post every day?
Related templates
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.
When you post in your main announcements channel, we instantly translate it and share it in each regional Slack channel, so your whole team stays aligned.
Every 15 minutes we spot support tickets written in another language, translate them to English, and post a summary with a suggested priority to your Slack channel.
Every time someone submits your survey, we translate their open-text answers into English and log the whole response to a Google Sheet your team can read.
Every hour, turn each newly published blog post into an on-brand Canva graphic and share it on your LinkedIn company page with an AI-written caption.
Every hour, narrate your latest WordPress articles with an expressive voice, save the audio to Dropbox, and share the link in Slack.
Reach every market in its own language.
Turn each new blog post into review-ready translations without copy-pasting into a translator.