Повний посібник із налаштування
Усе, що вам потрібно для встановлення, налаштування та використання GoLocal!, щоб зробити вашу програму Bubble.io багатомовною.
Безпечні дані Bubble, стабільний переклад інтерфейсу користувача та чітка багатомовна логіка
Оновіть плагін із Bubble Плагіни перш ніж тестувати наведені нижче функції. Конфігурація проекту, переклади та виставлення рахунків залишаються приєднаними до проекту GoLocal. Розробникам програм не потрібно вставляти або підтримувати сценарій у заголовку HTML Bubble; опублікована версія плагіна містить підтримуване середовище виконання.
Дані, які можна редагувати, залишаються недоторканими
Звичайні введення, багаторядкові введення, редактори Quill та інші області contenteditable не перекладаються зворотно, коли користувач вводить текст.
Виключення багаторазового вмісту
Захистіть введені користувачем значення бази даних і клітинки повторюваних груп за допомогою do_not_translate_selectors замість дубльованих ідентифікаторів HTML.
Безпечний автоматичний зворотний пошук
Bubble SearchBox, спадне меню, застарілі MultiDropdown і Select2 MultiDropdown можуть зіставляти перекладені варіанти зі значеннями вихідної мови.
Елемент GoLocal Query
Використовуйте один незалежний елемент GoLocal Query на звичайний вхід, лише якщо цей вхід керує пошуком тексту вихідною мовою, умовою або фільтром API.
1 Встановіть плагін
GoLocal! доступний як a безкоштовний плагін на ринку Bubble.io. Ви нічого не платите за його встановлення — сам плагін коштує 0 доларів. Оплата стягується, лише коли ви підключаєте його до проекту GoLocal! за допомогою ключа API.
Відкрийте редактор Bubble → вкладка Плагіни.
Натисніть «+ Додати плагіни» та знайдіть «GoLocal» або «Автоматичний перекладач».
Встановіть GoLocal! — автоматичний перекладач. Якщо його вже встановлено, оновіть його до останньої опублікованої версії.
Перетягніть елемент GoLocal! на будь-яку сторінку (зазвичай заголовок для багаторазового використання). Елемент невидимий.
2 Створіть свій обліковий запис і проект
Щоб активувати плагін, вам потрібен Ключ API. Ключі API генеруються на інформаційній панелі GoLocal! під час створення проекту.
А 5-денна безкоштовна пробна версія запускається автоматично. Кредитна картка не потрібна. ваш Ключ API генерується негайно.
Скопіюйте ключ API — він вам знадобиться під час налаштування плагіна в Bubble.
myapp.bubbleapps.io, введіть саме це.3 Налаштуйте плагін
Натисніть на елемент GoLocal!. Як мінімум набір одне поле:
Мінімальна необхідна настройка:
api_key→ вставте ключ API із вашого проекту GoLocal!За допомогою лише ключа API GoLocal! завантажує конфігурацію проекту, використовує браузер відвідувача або збережений вибір віджетів, перекладає видимий текст інтерфейсу користувача та показує перемикач мов.
4 Поля плагіна — довідка
api_keyОбов'язковийКлюч API вашого проекту з інформаційної панелі GoLocal!.
Прив’язаний до домену — безпечно включити в код клієнта.
source_languageДодатковоДвобуквений код оригінальної мови вашої програми. приклади: en, uk, de.
Зазвичай залишають це поле порожнім, якщо вихідну мову вже налаштовано в проекті GoLocal. Встановлюйте його лише тоді, коли вам навмисно потрібно змінити значення проекту/Worker.
target_languageДодатковоЗазвичай це поле залишають порожнім. Віджет і постійний вибір відвідувача контролюють активну мову під час завантаження сторінки.
Жорстко закодоване значення, наприклад fr примушує цю мову щоразу, коли елемент ініціалізується, і може перевизначати вибір відвідувача. Прив’язуйте динамічне значення лише тоді, коли ваша програма Bubble навмисно володіє станом мови та надає один стабільний код мови на кожній сторінці.
enabledДодатковоПрапорець, який визначає, чи активний переклад. За замовчуванням: перевірено.
show_widgetДодатковоПоказати вбудований віджет перемикання мов. За замовчуванням: перевірено. Вимикайте його лише тоді, коли ваша програма Bubble надає власні мовні елементи керування та виклики switch_language.
widget_positionДодатковоПозиція віджета: bottom-right (за замовчуванням), bottom-left, top-right, top-left.
dataset_1ДодатковоПопередньо перекладіть свою базу даних Bubble для миттєвого завантаження.
Структурований формат (рекомендовано):
// Налаштування Bubble:
Виконайте пошук за (Категорії) :format as text
Зміст: {Назва цієї категорії ; Назва цієї категорії ; Тіло цієї категорії}
роздільник: ,
// Додаємо інший тип:
:append Виконайте пошук (Cures) :format як текст
Зміст: {Назва цього засобу; Назва цього засобу; Рецепт цього лікування}
роздільник: ,
Поля всередині { } розділені ; — блоки, розділені ,. див Набори даних для деталей.
do_not_translate_idsДодатковоІдентифікатори елементів, розділених комами ніколи не перекладати. Зазначення ідентифікатора групи/контейнера виключає всіх дочірніх елементів.
приклад: user-bio, code-block, brand-section
Ідентифікатори HTML мають бути унікальними. Не використовуйте один і той самий ідентифікатор у клітинках повторюваних груп; замість цього використовуйте do_not_translate_selectors з класом.
do_not_translate_selectorsДодатковоСелектори CSS для повторно використовуваного або повторюваного вмісту, який має залишатися таким, як зберігається. Відповідний елемент і всі його дочірні елементи виключаються.
приклади: .gl-user-content, [data-user-content], [id^="gl-user-content-"]
Рекомендовано для введених користувачем значень бази даних і повторюваних груп. Селектор класу або префікса ідентифікатора може безпечно відповідати багатьом рядкам без створення дублікатів ідентифікаторів HTML.
private_translate_idsДодатковоЕлементи, які перекладаються але переклади не кешуються глобально. Використовуйте для даних кожного користувача (імена, адреси).
приклад: user-name, order-address
Якщо вміст має залишатися таким, яким його ввів користувач, не використовуйте це поле. Виключіть його за допомогою do_not_translate_selectors.
5 Набори даних — переклад вашої бази даних Bubble
Більшість програм Bubble відображають дані з бази даних. Без наборів даних динамічний вміст перекладається під час першого перегляду, що спричиняє видиму затримку. Набори даних попередньо перекладають усе для миттєве завантаження.
Формат 1: структурований — для багатопольових елементів (рекомендовано)
Загорніть кожен предмет {}, окремі поля с ; (крапка з комою), вживати , як роздільник між елементами.
// Bubble: Виконайте пошук (Категорії) :формат як текст
Зміст: {Назва цієї категорії ; Назва цієї категорії ; Тіло цієї категорії}
роздільник: ,
// Append: Виконайте пошук (Cures) :format як текст
Зміст: {Назва цього засобу; Назва цього засобу; Рецепт цього лікування}
роздільник: ,
// Результат: {Здоров'я;Здоров'я;Посібник...},{Краса;Догляд за шкірою;Рутини...},{Аспірин; Полегшення; Прийняти 2 рази...}
{} розділити на ; — блоки, розділені на , — коми у вашому тексті безпечні.Формат 2: простий — для списків з одним значенням
Для коротких значень без ком (назви категорій, теги):
Зміст: Назва цієї категорії роздільник: ,
// Вихід: електроніка, одяг, книги, іграшки
Важливо: Якщо текст може містити коми, завжди використовуйте структурований формат із {field;field} обгортання.
normalized_query тільки у фільтрі або стані. Перегляньте повний посібник Bubble.6 Bubble Стани, події та дії
Основний елемент GoLocal! володіє перекладом сторінок і надає активну мову Bubble. Використовуйте його стани в умовах і його події, щоб почати робочі процеси в правильній точці життєвого циклу перекладу.
1. Готове середовище виконання
translator_ready = yes означає ініціалізацію GoLocal. Це не означає, що кожен динамічний елемент Bubble завершив переклад.
2. Мова змінена
language_changed спрацьовує, коли змінюється активна мова. Прочитайте current_language тут.
3. Передача завершена
translation_complete запускається після завершення пакета перекладу. Динамічний вміст може створювати пізніші пакети.
current_languagetextАктивний двобуквений код мови. Використовуйте його для посилань на PDF, умовних символів Bubble і мови інтерфейсу користувача програми.
detected_languagetextВиявлена вихідна мова/мова веб-переглядача, яку повідомляє середовище виконання.
translator_readyyes/noТак після ініціалізації середовища виконання перекладу.
is_translatingyes/noТак, поки GoLocal обробляє пропуск перекладу.
translation_completeyes/noПрапор завершення для останнього проходу.
total_textsnumberКількість текстових елементів, спостережених у поточному сеансі виконання.
cached_local / cached_bundle / cached_servernumberЛічильники діагностичного кешу. Корисно для підтримки та перевірки продуктивності.
перекладено / помилки / tokens_usednumberПереклад часу виконання та лічильники помилок.
last_error / preload_statustextОстання помилка виконання та стан попереднього завантаження для діагностики.
Дії елементів
switch_language— перейти до потрібного поля діїtarget_lang, наприкладfr.Start_translation— почати або відновити спостереження та переклад.Stop_translation— припинити спостереження та переклад до перезапуску.rescan_dom— явно сканувати вміст, відтворений після спливаючого вікна Bubble, повторно використовуваного елемента або повторюваного оновлення групи.
Приклад: показати посилання на PDF-файл французькою мовою
Створіть умову Bubble для посилання або групи: When GoLocal! A's current_language is "fr". Якщо робочий процес має запускатися, коли відвідувач змінює мову, використовуйте When GoLocal! A language_changed. Вам не потрібно чекати translation_complete лише для читання вибраною мовою.
7 Дані користувача, форми та повторювані групи
GoLocal перекладає текст інтерфейсу, але дані, які вводять або створюють ваші користувачі, мають залишатися стабільними. Поточне середовище виконання захищає звичайні введення, багаторядкові введення, редактори Quill та інші contenteditable області, поки людина друкує.
Безпечний за умовчанням
- • Значення введення та багаторядкового введення зберігаються точно так, як вони введені.
- • Quill
.ql-editorта інші редаговані області пропускаються під час введення. - • Електронні адреси, паролі, числа, дати, ідентифікатори та файли завжди мають використовувати оригінальні значення Bubble.
Дисплей потребує виключення
Коли збережений вміст користувача пізніше відображається звичайним елементом Bubble Text, GoLocal не може знати, чи це копія інтерфейсу користувача чи дані користувача. Позначте цей елемент відображення або його найменший контейнер як зону без перекладу.
Рекомендоване налаштування повторюваної групи
- 1. Виберіть лише елемент Text, який відображає вміст користувача. Не виключайте всю повторювану групу, якщо її кнопки, заголовки та статичні мітки мають перекладатися.
- 2. Надайте кожному рядку унікальний динамічний ідентифікатор.gl-user-content-Унікальний ідентифікатор поточної клітинки Thing
- 3. Додайте один селектор до елемента GoLocal.do_not_translate_selectors = [id^="gl-user-content-"]
Якщо ваші налаштування Bubble або багаторазовий елемент можуть застосувати спеціальний клас, .gl-user-content ще простіше. Додайте цей клас один раз до do_not_translate_selectors.
Підтримувані маркери без перекладу
Час виконання поважає data-tr-skip, data-no-translate, translate="no", і вкладені .notranslate елементів. Сконфігурований ідентифікатор і поля вибору CSS залишаються найпростішим власним методом Bubble.
Пропустити проти приватного перекладу
do_not_translate_* зберігає первісну вартість. private_translate_ids усе ще перекладає значення, але запобігає спільному глобальному кешу. Використовуйте приватний переклад лише тоді, коли вміст має бути перекладено справді.
home або check_box. Якщо піктограма має текстову підтримку, виключіть найменшу піктограму/контейнер керування, щоб ключове слово гліф ніколи не перекладалося.8 Редактор перекладу та виправлення вручну
Використовуйте Редактор перекладів для фіксованої копії продукту: навігаційних міток, заголовків, кнопок, довідкового тексту та інших фраз, які повинні мати один перевірений переклад. Записи, введені вручну, заблоковані й не замінюються пізнішим автоматичним перекладом.
Хороша ручна корекція
Джерело План оновлення → відгук французької фрази продукту Améliorer le plan. Це стабільна копія інтерфейсу, яка належить до редактора.
Не виправляйте дані користувача по рядку за раз
Назва, створена клієнтом, наприклад Travail à domicile має бути виключено в елементі відображення Bubble. Додавання тисяч перекладів ідентичності не є безпечною заміною зони без перекладу.
- 1. Відкрийте проект на інформаційній панелі GoLocal і виберіть Переклади.
- 2. Знайдіть точну вихідну фразу та мовну пару.
- 3. Відредагуйте цільове значення або використовуйте Додати переклад для нової точної вихідної фрази.
- 4. зберегти. Запис позначено посібник, версія комплекту змінюється, а середовище виконання оновлює словник проекту.
- 5. Повторно перевірте точний маршрут Bubble, де відображається фраза. використання
rescan_domлише якщо фраза з’являється після незвичайного відтворення третьої сторони.
en → fr, ні auto → fr. Середовище виконання запитує вихідну пару проекту.9 Як працює переклад
GoLocal спостерігає за відтвореним Bubble DOM, спочатку застосовує переклади з комплекту проекту та локального кешу та запитує лише відсутні або змінені фрази. Він продовжує спостерігати за спливаючими вікнами, повторно використовуваними елементами та повторюваними групами, які Bubble рендерить пізніше.
Початкове завантаження сторінки
Середовище виконання визначає вихідну та цільову мови, завантажує поточний пакет проекту, сканує видимий текст інтерфейсу користувача та розкриває сторінку за допомогою вбудованого потоку запобігання мерехтіння.
Кешовані переклади
Відомі фрази застосовуються з комплекту чи кешу браузера без їх повторного створення. Змінена версія комплекту робить недійсними застарілі кешовані значення.
Динамічний вміст Bubble
Спостерігач DOM виявляє нещодавно відтворені спливаючі вікна, багаторазово використовувані елементи, умовно видимі групи та клітинки повторюваних груп. rescan_dom є явним резервним варіантом.
10 Усунення несправностей і тестування випуску
Сторінка скидається на одну мову
Залиште target_language порожнім на кожній сторінці та багаторазовому елементі GoLocal, якщо ваша програма Bubble навмисно не володіє мовою. Жорстко закодоване значення повторно застосовується під час ініціалізації.
Віджет відсутній
Переконайтеся, що show_widget позначено, встановлено найновішу версію плагіна, і лише один призначений елемент GoLocal керує сторінкою. Потім протестуйте поза режимом покрокового налагодження Bubble.
Спливаюче вікно або новий повторюваний рядок групи залишаються неперекладеними
Зачекайте, поки елемент стане видимим. Спостерігач зазвичай знаходить його автоматично; якщо сторонній елемент відображається незвично, запустіть rescan_dom після того, як буде показано спливаюче вікно або групу.
Введений або форматований текст змінюється під час введення
Оновіть плагін, підтвердьте поточне середовище виконання та переконайтеся, що робочий процес збереження зчитує вихідне значення вводу/редактора, а не перекладений текст або normalized_query.
Французький текст, створений користувачем, перекладається знову
Виключіть відображуваний текст/контейнер через do_not_translate_selectors. Захистіть найменше динамічне значення, а не весь статичний інтерфейс навколо нього.
Ручна корекція повертається до автоматичного
Поточні ручні записи заблоковано. Переконайтеся, що ви відредагували той самий вихідний текст і точну мовну пару, що використовується середовищем виконання, а потім надішліть проект, маршрут, фразу та час тестування до служби підтримки.
Назви місяців/днів залишаються англійською
Власний браузер або засіб вибору дати Bubble chrome відповідає локалі браузера/контролю. GoLocal перекладає навколишні мітки, але не переписує внутрішній інтерфейс користувача вибору дати.
Chrome пропонує власний переклад сторінок
Плагін уже позначає документ як notranslate для перекладу в браузері, дозволяючи самому GoLocal працювати. Оновіть плагін; не додавайте друге розширення перекладу або сценарій.
Після перекладу текст переноситься інакше
GoLocal зберігає типографіку Bubble. Перекладені фрази можуть бути довшими, тому перевіряйте мінімальну ширину Bubble, максимальну ширину, висоту підгонки, переповнення та адаптивні правила на кожній точці зупину.
Контрольний список приймання Bubble
- ✓Перемикайте джерело → ціль → джерело без оновлення.
- ✓Перехід між усіма сторінками Bubble і багаторазовими заголовками.
- ✓Відкривати спливаючі вікна та завантажувати повторювані рядки груп після завантаження сторінки.
- ✓Вводьте, вставляйте, редагуйте, зберігайте та знову відкривайте звичайні та форматовані текстові поля.
- ✓Перевірте одне виключене значення даних користувача всередині кожної повторюваної групи.
- ✓Перевірте SearchBox, спадне меню, пошук застарілих/Select2 MultiDropdown.
- ✓Перевірте кожну умову current_language і посилання на PDF/ресурс.
- ✓Повторно протестуйте Chrome, Safari, мобільну ширину та приватний сеанс.
[GoLocal v4].11 Ціноутворення& Платежі
Три плани, всі с необмежену кількість слів перекладу та необмежену кількість цільових мов.
| Особливість | Starter | Pro | Business |
|---|---|---|---|
| Ціна за місяць | $15/mo | $35/mo | $89/mo |
| Річна ціна | $149/yr | $349/yr | $890/yr |
| Цільові мови | Необмежений | Необмежений | Необмежений |
| Ліміт MAU | 30K | 150K | 1M |
| Проекти | 1 | 1 | 2 |
MAU
Унікальні відвідувачі, які бачили переклади. Боти відфільтровані. 10% безкоштовно, а потім 3/10 тис. доларів додатково.
Мови
Усі платні плани включають необмежену кількість цільових мов без додаткової плати за мову.
5-денна безкоштовна пробна версія
Кожен новий проект починається з безкоштовної пробної версії. Кредитна картка не потрібна.
12 Партнерська програма
Заробляйте гроші, рекомендуючи GoLocal!
Поділіться своїм реферальним посиланням — заробіть періодичні комісії за кожного клієнта, якого ви платите.
Зареєструватися як партнер
Інформаційна панель → вкладка «Партнер» → «Приєднатися до партнерської програми». Отримайте своє унікальне реферальне посилання.
Поділіться своїм посиланням
Блог, YouTube, форум Bubble, соціальні мережі, навчальні посібники або безпосередньо з клієнтами.
Заробляйте комісійні
Періодична комісія протягом усього терміну дії підписки кожного рекомендованого користувача.
Отримайте гроші
Надішліть запит на виплату за допомогою банківського переказу або PayPal, коли баланс досягне мінімального порогу.
Готові зробити свою програму багатомовною?
Установіть безкоштовний плагін, створіть проект, вставте свій ключ API — і ваша програма Bubble розмовлятиме всіма мовами.