Internationalization
TNC FlipBook 3D ships with viewer translations for 194+ languages and full right-to-left (RTL) support for languages like Arabic and Hebrew. This article covers how to pick a language for the viewer, how RTL behavior works, and how to support a multilingual audience.
What gets translated
The plugin translates the viewer interface — every button label, tooltip, sidebar header, popup text, and screen-reader announcement.
It does not translate the FlipBook content itself. Your PDF or images stay in their original language. If you need Spanish, French, and English versions of the same FlipBook, you create three separate FlipBooks (one per language).
Setting the viewer language
There are two places to set the language:
Globally for the whole site
- Go to FlipBooks → Settings → General.
- Find the Default Language field.
- Pick a language from the searchable dropdown (194+ options).
- Save.
All new FlipBooks default to this language.
Per FlipBook
- Open the FlipBook for editing.
- Switch to the General tab.
- Flip the Language override from Global to Custom.
- Pick a language.
- Save.
Useful when a specific FlipBook has a different audience than your default.
Per embed (shortcode override)
You can also override the language inside a shortcode:
[tnc-flipbook-3d-embed id="123" language="fr"]
This is helpful if the same FlipBook appears on different language pages of your site.
How right-to-left (RTL) works
For languages that read right-to-left, the viewer automatically rearranges itself:
- Toolbar items run from right to left.
- Sidebars open from the right side.
- Page-turn direction reverses — the right-hand page is page 1.
- First/Last arrows swap (the right arrow goes to page 1, left arrow goes to the last page).
- Search results highlight RTL text correctly.
RTL languages currently include: Arabic (ar), Hebrew (he), Persian (fa), Urdu (ur), Kurdish (ku), Pashto (ps), Sindhi (sd), Yiddish (yi), Sorani Kurdish (ckb), and Uyghur (ug).
You don't need to enable RTL manually — just pick one of these languages and the viewer flips automatically.
How language detection works
When a FlipBook loads, the viewer picks a language in this priority order:
- Shortcode override (e.g.
language="fr"parameter). - Per-FlipBook setting (if set to Custom).
- Global default (from Settings → General).
- Fallback to English.
The reader's browser language is not auto-detected by default — to do that, set the Default Language globally and your translators can configure the FlipBook URL per locale.
Building a multilingual FlipBook library
If you publish FlipBooks in multiple languages, here's the recommended setup:
Option 1 — One FlipBook per language
- Create a separate FlipBook for each language: "Catalog EN", "Catalog ES", "Catalog FR".
- Upload each PDF in its target language.
- Set the Language per FlipBook on the General tab.
- On your site, link visitors to the FlipBook URL matching their language.
This is the simplest and most reliable approach. Each FlipBook can have its own SEO metadata, Social Image, etc.
Option 2 — With WPML or Polylang
If you use a translation plugin like WPML or Polylang:
- Create the FlipBook in your primary language.
- Use the translation plugin to translate the post (which creates a sibling post in the target language).
- Replace the PDF on the translated post with the target-language PDF.
- The viewer language follows your site's translation plugin.
WPML/Polylang handle the URL routing (e.g. /en/flipbook/catalog/, /fr/flipbook/catalog/) automatically.
Option 3 — One PDF, switchable language for UI only
Use one FlipBook with a fixed PDF but multiple shortcodes for different language UIs:
[tnc-flipbook-3d-embed id="123" language="en"]
[tnc-flipbook-3d-embed id="123" language="fr"]
[tnc-flipbook-3d-embed id="123" language="es"]
The PDF stays the same, but the toolbar and labels appear in the target language. Useful for international PDFs with image-heavy content where translation isn't needed.
SEO for multilingual FlipBooks
When you publish multiple language versions of the same FlipBook:
- Set the correct Language per FlipBook (the
<html lang="...">attribute uses this). - Use hreflang tags if you want Google to serve the right version to each region. WPML/Polylang handles this automatically; if you're managing translations manually, add hreflang via your SEO plugin.
- Avoid duplicate-content issues with the Canonical URL field on the SEO tab.
Translating your own custom text
Some plugin text (admin labels, FlipBook metabox titles) is translatable through standard WordPress translation files. The plugin ships with translations for major languages; if your language isn't supported yet, you can:
- Use a translation plugin like Loco Translate to translate strings directly in WordPress.
- Email translations to support — we add them in upcoming releases.
Translating addons
Most addons (Lead Capture, Monetize, Bookshelf, etc.) also ship with translation files. Use Loco Translate to edit per-addon translations.
Custom labels per FlipBook
If you need to change one specific label (e.g. say "Read" instead of "Read Aloud" on the toolbar button), you can:
- Use a translation plugin like Loco Translate to override the string globally.
- Or override via custom CSS for visual-only labels.
- Or use the developer filter
tncfb3d_translateto override per-FlipBook (see Developer Reference).
Auto-detect visitor language
The plugin doesn't auto-detect by default, but if you want to:
- Use a WordPress plugin like Geolocation Lite to detect visitor location.
- Use that to redirect visitors to the appropriate FlipBook URL.
- Or use JavaScript on your site to read
navigator.languageand adjust the FlipBook URL.
A simple, no-plugin workflow: just include a language picker on the page that shows the appropriate FlipBook based on user choice.
Troubleshooting
Toolbar shows in English even though I picked French.
- Confirm the Language is set on the FlipBook's General tab (not just Global).
- Refresh the front-end page (cache may be stale).
- Some custom CSS may override label text — check by viewing the FlipBook in an incognito window.
RTL pages look broken — text flows the wrong way.
- Confirm the FlipBook's source PDF was authored as RTL. If the PDF was created with LTR text formatting, the viewer can't magically reverse the text inside it.
- The viewer's UI flips, but the PDF content stays as authored.
Search doesn't work for non-Latin scripts. The search uses PDF.js for text extraction, which handles most Unicode scripts. If search fails for a specific language:
- The PDF may not have proper text encoding. Try re-exporting the PDF with embedded fonts.
- Run OCR on scanned PDFs to add searchable text.
Custom translation isn't appearing.
- Confirm the translation .mo file is in
wp-content/languages/plugins/. - Or, if using Loco Translate, click Sync then Save in Loco's settings.
- Translations cache aggressively — clear all caches and try again.
Next steps
- Settings Overview — global default settings
- SEO and Metadata — per-language SEO
- Embedding with Shortcodes — per-embed language override