Tumblr doesn’t offer a way to translate your posts.
You can only provide interface strings (in custom themes) for supported languages.
Workarounds
(1) Translation in the same post
You could include all languages in the same post, for example like:
<article>
<div lang="en"><!-- English here --></div>
<div lang="de"><!-- German here --></div>
</article>
You could even try implement a per-post language switcher in JavaScript.
Problems:
- doesn’t work well with non-text posts
- title can only be in one language
(2) Several posts in the same blog
You could create additional posts for each translation.
You might want to tag them ("English", "Deutsch", …).
Problems:
- readers would have to skip over all the translations (if they don’t use tags to browse)
(3) Several blogs
You could create additional blogs for each translation.
E.g., example.tumblr.com
for English, example-de.tumblr.com
for German, ….
Language switcher
You might want to add a language switcher.
You could use the link type alternate
in combination with the hreflang
attribute to link to the translations of each post:
<a href="…" hreflang="de" rel="alternate" lang="de">Deutsch</a>
<a href="…" hreflang="en" rel="alternate" lang="en">English</a>