Překlady šablon
Šablonu můžete posílat ve více jazycích. Má jeden výchozí jazyk a až 29 jazykových verzí
(překladů). ID šablony je ve všech jazycích stejné – váš kód jen řekne, jaký jazyk chce, třeba
locale: 'de', a Frontmail vybere správnou verzi.
Nejste omezeni na osm jazyků dashboardu: použít můžete jakýkoli jazyk zapsaný značkou
BCP 47, například hu, nl nebo pt-BR.
Co se překládá a co je společné
Sekce “Co se překládá a co je společné”Každá jazyková verze má vlastní:
- Předmět,
- HTML tělo,
- Textovou verzi (automaticky vygenerovanou z HTML překladu, nebo napsanou ručně),
- Jméno odesílatele – nepovinné; když ho necháte prázdné, použije se jméno z výchozího jazyka.
Všechno ostatní se nastavuje jednou, ve výchozím jazyce, a sdílejí to všechny jazyky: příjemci (Komu, CC, BCC, Odpovědět na), E-mail odesílatele, parametry, Při uložení vložit CSS do prvků, služba, nastavení ochrany, přílohy, automatická odpověď i sběr kontaktů.
Je to záměr: bezpečnostní pravidla šablony – dynamičtí příjemci a zamčený obsah, pevná pole odesílatele a validace parametrů – jsou na jednom místě, takže je žádný překlad nemůže oslabit. Jazyková verze smí používat jen parametry, které existují ve výchozím jazyce.
Jak přidat jazyk
Sekce “Jak přidat jazyk”Přidávat a upravovat překlady smí role Vlastník, Admin a Vývojář.
- Otevřete šablonu. Nad kartami editoru je lišta Jazyky s výchozím jazykem (štítek Výchozí) a s jedním čipem pro každou jazykovou verzi.
- Klikněte na Přidat jazyk.
- V poli Jazyk vyberte jazyk ze seznamu nebo napište jeho kód (např.
pt-BR) a zvolte Použít „pt-BR“. - V části Začít z vyberte:
- Kopie výchozího jazyka – text přeložíte sami,
- Strojový překlad – přeloží ho služba s vlastním klíčem vaší organizace (viz Strojový překlad); pokud máte nastavených víc služeb, zvolte Službu,
- Prázdná – začnete s prázdným předmětem a HTML.
- Klikněte na Přidat jazyk, obsah přeložte nebo zkontrolujte a klikněte na Uložit.
Dokud nový jazyk neuložíte, je to jen koncept (štítek nový). Strojový překlad vychází z uloženého výchozího jazyka – neuložené změny v něm nebudou.
Úprava překladu
Sekce “Úprava překladu”Kliknutím na jazyk v liště Jazyky přepnete editor do tohoto jazyka. Editor ukáže Upravujete překlad: … a funguje jako obvykle:
- Obsah – předmět a karty HTML, Vizuální a Text upravují překlad. Ukázková data a náhled jsou společné a náhled vykreslí překlad přesně tak, jak odejde. Parametry jsou tu jen pro čtení (Parametry sdílejí všechny jazyky. Upravte je ve výchozím jazyce.).
- Nastavení – k překladu patří jen předmět, Jméno odesílatele a nastavení textové verze; společná pole mají poznámku Sdílené všemi jazyky.
- Kód pro web a Poslat test mají pole Jazyk, takže si kód zkopírujete nebo testovací e-mail pošlete v libovolném jazyce.
Kontroly navíc porovnávají překlad s výchozím jazykem: parametr, který je jen v překladu, je chyba (nejdřív ho přidejte do výchozího jazyka), parametr použitý ve výchozím jazyce, který v překladu chybí, je upozornění.
Štítky Zastaralý a Strojový
Sekce “Štítky Zastaralý a Strojový”- Zastaralý – výchozí jazyk se od uložení překladu znovu uložil, takže překladu může něco chybět. Odesílání funguje dál. Překlad upravte a uložte, nebo – pokud pořád sedí – klikněte na Označit jako aktuální.
- Strojový – uložená verze vznikla strojovým překladem. Než se na ni spolehnete, zkontrolujte ji.
Když máte vybraný překlad, nabízí lišta také Přeložit znovu (nový strojový překlad uloženého výchozího jazyka; nic se neuloží, dokud nekliknete na Uložit) a Smazat jazyk. Se smazaným jazykem zmizí i jeho verze a e-maily, které si ho vyžádají, odejdou ve výchozím jazyce.
Verze a obnovení
Sekce “Verze a obnovení”Každé uložení překladu vytvoří jeho novou verzi – každý jazyk má vlastní číslování. Když máte vybraný překlad, karta Verze ukazuje Verze překladu … se sloupci Vychází z (verze výchozího jazyka, ke které byl překlad uložen) a Původ (Ruční nebo Strojový). Verze porovnáte a starší Obnovíte stejně jako u výchozího jazyka.
Každá zpráva si pamatuje jazyk i verzi překladu, se kterou byla vykreslená. Pozdržené e-maily v hold frontě odejdou s verzemi, které byly aktuální, když je Frontmail přijal.
Změna výchozího jazyka
Sekce “Změna výchozího jazyka”Výchozí jazyk najdete v Nastavení → Obecné → Výchozí jazyk. Zvolit můžete jakýkoli jazyk kromě takového, který už má jazykovou verzi – tu nejdřív smažte.
Odeslání v jazyce
Sekce “Odeslání v jazyce”Jazyk vždy výslovně určuje odesílatel. Frontmail ho neodhaduje z prohlížeče
(Accept-Language) – pokud chcete jazyk návštěvníka, předejte ho sami.
Jak se jazyk vybírá
Sekce “Jak se jazyk vybírá”Pro požadované locale Frontmail použije:
- bez
locale→ výchozí jazyk, - přesnou shodu (na velikosti písmen nezáleží) → tento jazyk,
- stejný základní jazyk →
de-ATdostanede;ptdostane verzipt-…, třebapt-BR, - jinak → výchozí jazyk.
Neznámý jazyk není chyba – locale je jen přání. Odmítne se jen chybně zapsaná značka (např.
"german!"), a to chybou 400 invalid_body.
Odpověď prozradí, který jazyk se skutečně použil:
{ "message_id": "msg_…", "status": "queued", "status_token": "…", "locale": "de" }REST API
Sekce “REST API”Přidejte locale do POST /v1/send (a do každé zprávy v POST /v1/send-batch):
{ "template_id": "tpl_01J9…", "template_params": { "name": "Jana" }, "locale": "de"}POST /v1/send-form používá vyhrazené pole formuláře fm_locale. Pole s názvem locale
zůstává běžným parametrem šablony, takže stávající formuláře fungují dál:
<select name="fm_locale"> <option value="cs">Čeština</option> <option value="de">Deutsch</option></select>SDK
Sekce “SDK”Všechna SDK mají volbu locale a použitý jazyk vrací v result.locale.
Prohlížeč (@frontmail/browser) – sendForm ho pošle jako fm_locale;
vlastní pole fm_locale ve formuláři má přednost:
const result = await send('svc_01J9…', 'tpl_contact', { name: 'Jana' }, { locale: 'de' });await sendForm('svc_01J9…', 'tpl_contact', '#contact', { locale: document.documentElement.lang });console.log(result.locale); // 'de'React (@frontmail/react) – prop locale komponenty <FrontmailForm>,
nebo options.locale u send / sendForm. Vue a Svelte fungují stejně:
<FrontmailForm serviceId="svc_01J9…" templateId="tpl_contact" locale="de">…</FrontmailForm>
const { send } = useSendEmail('svc_01J9…', 'tpl_contact');await send({ name: 'Jana' }, { locale: 'de' });Node.js (@frontmail/node):
const { locale } = await frontmail.send({ templateId: 'tpl_order', params: { order_id: 'A-1042' }, locale: 'de' });await frontmail.sendBatch([{ templateId: 'tpl_reminder', params: { name: 'Jana' }, locale: 'cs' }]);Android / Kotlin (dev.frontmail:frontmail):
val result = frontmail.send( "tpl_contact", mapOf("name" to name), options = SendOptions(locale = Locale.getDefault().toLanguageTag()),)println(result.locale) // "de"iOS / Swift (Frontmail pro Swift) – použijte Locale.preferredLanguages.first
(např. de-AT); Locale.current.identifier obsahuje _ a platnou značkou není:
let result = try await frontmail.send( templateID: "tpl_contact", params: ["name": "Jan"], options: SendOptions(locale: Locale.preferredLanguages.first))print(result.locale ?? "default") // "de"Flutter / Dart (frontmail) – použijte toLanguageTag() (např. de-AT);
Locale.toString() používá _ a platnou značkou není:
final result = await frontmail.send( templateId: 'tpl_contact', params: {'name': 'Jan'}, options: SendOptions(locale: Localizations.localeOf(context).toLanguageTag()),);print(result.locale ?? 'default'); // "de"V React Native použijte send(params, { locale: 'de' }) z useSendEmail. npx frontmail types
vypíše jazyky každé šablony a vygeneruje pro ně typ – viz Node.js.
Automatické odpovědi, opětovné odeslání a EmailJS
Sekce “Automatické odpovědi, opětovné odeslání a EmailJS”- Automatická odpověď se řídí jazykem původní zprávy: šablona automatické odpovědi si pro tento jazyk vybere vlastní jazykovou verzi podle stejných pravidel (a případně použije svůj výchozí jazyk).
- Odeslat znovu v Historii pošle zprávu znovu ve stejném jazyce, s aktuální verzí překladu. Pokud byl mezitím jazyk smazán, použije se výchozí jazyk.
- Cesty kompatibilní s EmailJS (
/api/v1.0/email/…) a@frontmail/emailjs-compatposílají vždy výchozí jazyk.
Formátování se řídí jazykem e-mailu
Sekce “Formátování se řídí jazykem e-mailu”E-mail se vykreslí v jazyce, ve kterém odchází. formatDate, formatNumber
a formatMoney formátují data, čísla a částky pro tento jazyk
(německá verze vypíše 1. Oktober 2026 a 49,00 €). Patička Odesláno přes Frontmail v tarifu
Free je v jazyce e-mailu, pokud je to jeden z osmi jazyků dashboardu, jinak v angličtině.
Strojový překlad
Sekce “Strojový překlad”Frontmail vám šablonu přeloží pomocí OpenAI, Anthropic, Google Gemini nebo DeepL – a to s vlastním API klíčem vaší organizace („bring your own key“). Frontmail nikdy nepřekládá na svůj účet a strojový překlad nestojí žádné kredity Frontmailu; za použití vám účtuje přímo daná služba.
Strojový překlad se nikdy nespouští sám: proběhne jen tehdy, když v dialogu Přidat jazyk zvolíte Strojový překlad nebo kliknete na Přeložit znovu. Výsledkem je koncept, který před uložením zkontrolujete.
Jak nastavit klíč služby
Sekce “Jak nastavit klíč služby”Přidávat a měnit klíče smí jen Vlastník a Admin. Vývojář vidí, které služby jsou nastavené (jen pro čtení), a může je k překladu používat.
- Otevřete Nastavení → Strojový překlad.
- U služby klikněte na Přidat klíč. Odkaz Získat klíč … otevře stránku s klíči dané služby.
- Vložte API klíč. U OpenAI, Anthropic a Gemini můžete vyplnit Model (nepovinné); když ho necháte prázdný, použije se výchozí model služby. DeepL volbu modelu nemá.
- Klikněte na Uložit klíč. Před uložením klíč ověříme malým požadavkem na službu.
Máte-li víc služeb, tlačítkem Nastavit jako výchozí určíte, která bude předvybraná. U každé nastavené služby najdete Nahradit klíč a Odebrat; po odebrání klíče zůstanou už uložené překlady beze změny.
Klíč ukládáme šifrovaně a už ho nikdy nezobrazíme – dashboard ukazuje jen jeho poslední čtyři znaky. Každou změnu zaznamená Audit log.
Co se službě posílá
Sekce “Co se službě posílá”Jen předmět, HTML, textová verze a jméno odesílatele uloženého výchozího jazyka – textová verze jen tehdy, když je psaná ručně (automatická se vygeneruje z přeloženého HTML). Nic dalšího Frontmail neopustí: žádní příjemci, hodnoty parametrů, ukázková data, kontakty ani historie zpráv. Požadavek jde ze serverů Frontmailu přímo na oficiální API služby a na obsah se vztahují podmínky dané služby.
Jak se výsledek kontroluje
Sekce “Jak se výsledek kontroluje”Frontmail službu žádá, aby výrazy Handlebars ({{name}}, {{#if …}}), HTML značky a atributy,
odkazy a e-mailové adresy nechala beze změny, a výsledek pak ověří: překlad musí obsahovat přesně
stejné výrazy Handlebars a stejné adresy odkazů a obrázků jako zdroj. Pokud ne, výsledek se
zahodí s hláškou Strojový překlad změnil parametry, odkazy nebo strukturu HTML, a proto nebyl
použit. (translation_invalid) – zkuste to znovu nebo
s jinou službou. Nic se neuloží napůl.
Další chyby: translation_not_configured (není
nastavený klíč), translation_provider_auth
(služba klíč odmítla) a translation_provider_error
(služba selhala – zkuste to později).
Limity a náklady
Sekce “Limity a náklady”- 30 strojových překladů za hodinu na organizaci.
- 60 000 znaků zdrojového obsahu na jeden překlad; delší šablony dostanou
payload_too_large. - Překlad musí doběhnout do 60 sekund.
- Náklady účtuje služba účtu, ke kterému klíč patří. Překládání nespotřebovává kredity Frontmailu a odeslání přeloženého e-mailu stojí stejně jako každý jiný – jeden kredit.
Limity
Sekce “Limity”- 30 jazyků na šablonu – výchozí jazyk a 29 jazykových verzí.
- Pro jazykovou verzi platí stejné limity velikosti jako pro obsah šablony.
- Značka jazyka může mít nejvýš 35 znaků.
Export a import
Sekce “Export a import”Exportovat (.json) zahrne všechny jazykové verze a Importovat je v nové šabloně znovu vytvoří. Starší exporty bez jazykových verzí se importují stejně jako dřív.