Docs · Integrations · i18n
Документация
Справочник по мультиязыковости: как выбирается язык, где хранятся тексты, как выгружать и обновлять переводы.
Set I18N_EXPORT_TOKEN to enable export in production.
Contents
Navigate through the core topics.
Quickstart
Add the widget to your site and start receiving conversations in one place.
1) Add script
Place this snippet before </head>. Replace YOUR_PUBLIC_KEY.
<script>
(function(w,d){
w.Tallker=w.Tallker||function(){(w.Tallker.q=w.Tallker.q||[]).push(arguments)};
var s=d.createElement('script'); s.async=1; s.src='https://tallker.com/widget.js';
d.head.appendChild(s);
})(window,document);
Tallker('init',{ key:'YOUR_PUBLIC_KEY' });
</script>
2) Verify
Open your site, send a test message, and confirm it appears in Tallker inbox.
Определение языка
Приоритет выбора языка: параметр lang в URL → cookie lang → заголовок Accept-Language → ru.
Strategy
- User choice is sticky (cookie for 180 days).
- Country mapping is optional (tk_country_lang).
- Accept-Language is a safe fallback for first visit.
Translation read
Load default language first and override with selected language.
$tr = load_translations($pdo, $lang, $defaultLang);
$t = fn($key,$fb='') => $tr[$key] ?? ($fb ?: $key);
echo $t('docs_h1','Documentation');
Ключи переводов
Ключи для этой страницы имеют префикс docs_. Держите ключи стабильными — так обновления становятся безопасными.
Экспорт и импорт
Экспорт формирует SQL-дамп из tk_translations для выбранного набора (docs или all).
Import
Use mysql client. Run in a transaction to keep consistency.
# import example
mysql -uUSER -p DBNAME < tk_translations.sql
Export
Production export should be protected with I18N_EXPORT_TOKEN.
# export (debug=1 OR token)
GET https://tallker.com/docs?export=sql&scope=docs&lang=ru&debug=1
GET https://tallker.com/docs?export=sql&scope=all&lang=en&token=YOUR_TOKEN
Пример использования в PHP
Минимальный паттерн: определить язык, загрузить переводы одним запросом, подставлять значения через t('ключ').
<?php
$lang = $_GET['lang'] ?? 'ru';
$st = $pdo->prepare('SELECT tkey,tvalue FROM tk_translations WHERE lang=:lang');
$st->execute([':lang' => $lang]);
$bag = $st->fetchAll(PDO::FETCH_KEY_PAIR);
function t(array $bag, string $key, string $fallback=''): string {
return (isset($bag[$key]) && $bag[$key] !== '') ? $bag[$key] : ($fallback !== '' ? $fallback : $key);
}
echo t($bag,'docs_h1','Docs');
?>
Тексты в БД
Ниже — строки для выбранного набора и языка. Доступен поиск по ключу.
| Ключ | Значение | Updated |
|---|---|---|
| Применить | 2026-02-01 22:24:02 | |
| Экспорт SQL | 2026-02-01 22:24:02 | |
| Минимальный паттерн: определить язык, загрузить переводы одним запросом, подставлять значения через t('ключ'). | 2026-02-01 22:24:02 | |
| Пример использования в PHP | 2026-02-01 22:24:02 | |
| Экспорт формирует SQL-дамп из tk_translations для выбранного набора (docs или all). | 2026-02-01 22:24:02 | |
| Для production-защиты задайте переменную окружения I18N_EXPORT_TOKEN и передавайте token в URL. | 2026-02-01 22:24:02 | |
| Экспорт и импорт | 2026-02-01 22:24:02 | |
| Документация | 2026-02-01 22:24:02 | |
| Приоритет выбора языка: параметр lang в URL → cookie lang → заголовок Accept-Language → ru. | 2026-02-01 22:24:02 | |
| Поддерживаемые языки по умолчанию: ru, en, de, fr, es, tr. | 2026-02-01 22:24:02 | |
| Определение языка | 2026-02-01 22:24:02 | |
| Ключи для этой страницы имеют префикс docs_. Держите ключи стабильными — так обновления становятся безопасными. | 2026-02-01 22:24:02 | |
| Рекомендация: отражайте назначение строки в ключе (например, docs_btn_export, docs_overview_p1). | 2026-02-01 22:24:02 | |
| Ключи переводов | 2026-02-01 22:24:02 | |
| Язык | 2026-02-01 22:24:02 | |
| Справочник по мультиязыковости: как выбирается язык, где хранятся тексты, как выгружать и обновлять переводы. | 2026-02-01 22:24:02 | |
| Документация по системе переводов Tallker: структура ключей, определение языка, экспорт/импорт. | 2026-02-01 22:24:02 | |
| Документация — Tallker | 2026-02-01 22:24:02 | |
| Тексты хранятся в таблице tk_translations (lang, tkey, tvalue). | 2026-02-01 22:24:02 | |
| На странице /docs используется фолбек: выбранный язык → EN → RU. Это снижает риск «пустых» строк. | 2026-02-01 22:24:02 | |
| Обзор | 2026-02-01 22:24:02 | |
| Все тексты | 2026-02-01 22:24:02 | |
| Только /docs | 2026-02-01 22:24:02 | |
| Набор | 2026-02-01 22:24:02 | |
| Поиск по ключу… | 2026-02-01 22:24:02 | |
| Нужно добавить язык? Добавьте код в tk_languages и заполните tk_translations. Логика страницы не требует доработок. | 2026-02-01 22:24:02 | |
| Поддержка | 2026-02-01 22:24:02 | |
| Нет строк по текущему фильтру. | 2026-02-01 22:24:02 | |
| Ниже — строки для выбранного набора и языка. Доступен поиск по ключу. | 2026-02-01 22:24:02 | |
| Ключ | 2026-02-01 22:24:02 | |
| Значение | 2026-02-01 22:24:02 | |
| Тексты в БД | 2026-02-01 22:24:02 |
Поддержка
Нужно добавить язык? Добавьте код в tk_languages и заполните tk_translations. Логика страницы не требует доработок.