Lokalise
Lokaliseは、アジャイルチーム向けの翻訳管理サービスです。
この統合はLokaliseによって管理されています。
統合について
BrazeとLokaliseの統合では、コネクテッドコンテンツを使用して、ユーザーの言語設定に基づいて翻訳されたコンテンツをBraze Campaignsに簡単に挿入できます。
前提条件
| 必要条件 | 説明 |
|---|---|
| Lokaliseアカウント | このパートナーシップを活用するには、Lokaliseアカウントが必要です。 |
| Lokalise翻訳プロジェクト | この統合を設定する前に、Lokalise翻訳プロジェクトを作成する必要があります。 |
新しいLokaliseプロジェクトを作成する
新しい翻訳プロジェクトを作成するには、LokaliseにログインしてNew Projectを選択します。次に、プロジェクトに名前を付け、Base Language(翻訳元の言語)を選択し、1つ以上のTarget Languagesを追加し、Software Localizationプロジェクトタイプを選択します。準備ができたら、Proceedをクリックします。
統合
Lokaliseで、Brazeで定義したコネクテッドコンテンツ変数ごとに翻訳キーを作成します。翻訳の準備ができたら、言語ごとに1つのJSONファイルを生成し、コネクテッドコンテンツを提供するURLに公開できます。
ステップ1:ユーザー言語を設定する
まだ設定していない場合は、Brazeダッシュボードを開いてUsers > User Importに移動します。ここでユーザーをインポートできます。インポート用のCSVファイルを準備する際には、ユーザーの言語を記載した言語カラムを必ず含めてください。この言語フィールドは、後で翻訳を表示するときに使用されます。

使用する言語コードは、BrazeとLokaliseの両方で一致している必要があります。
ステップ2:Lokaliseで翻訳を準備する
次に、Lokaliseで翻訳を準備するには、Brazeのコネクテッドコンテンツ変数で使用しているのと同じ名前の翻訳キーを手動で作成する必要があります。
例えば、シンプルな翻訳キーdescriptionを作成してみましょう:
- Lokaliseプロジェクトを開いてAdd Keyをクリックし、Keyフィールドに「description」と入力します。
- Base Language Valueフィールドに「Demo description」と入力します。
- Platformsのドロップダウンに「Web」を追加します。
- 準備ができたら、Saveをクリックします。

プロジェクトエディターに翻訳キーが表示されます:

既知の問題
- キーはWebプラットフォームに割り当てられている必要があります。
- ピリオド(
.)や_on文字列を含むキーの使用は避けてください。たとえば、this.is.the.keyの代わりにthis_is_the_keyを使用し、join_us_on_instagramの代わりにjoin_us_instagramを使用してください。
ステップ3:LokaliseでBrazeアプリを設定する
Lokaliseプロジェクトを開いてAppsをクリックします。ここでBrazeアプリを検索してインストールします。以下の画面が表示されます:

Translation File URLでは、Lokaliseがプロジェクト内のキーのすべての翻訳を含むJSONファイルを公開します。プロジェクトにあるターゲット言語の数だけ翻訳ファイルのURLが得られます。そのため、翻訳ファイルのURLは2つの部分で構成されています:
- URLパスの最初の部分はすべての言語に共通です。
- URL末尾のJSONファイル名は、言語コードに基づいています。
翻訳ファイルのURLは、Braze Campaignを設定する際に必要となるURLです。JSONファイルのコンテンツを更新するにはRefreshをクリックします。URLは変更されないため、Brazeでコネクテッドコンテンツ呼び出しを変更する必要はありません。
テストURL
このURLをテストするには、URLをコピーし、{{${language}}}を言語コード(たとえばen)に置き換えて、ブラウザでこのURLを開きます。キーと翻訳を含むJSONファイルが表示されます:

ステップ4:Braze Campaignで翻訳を使用する
コネクテッドコンテンツ呼び出しを挿入する
準備ができたら、Brazeに戻り、既存のCampaignを開くか、新しいCampaignを作成します。この例では、サンプルコンテンツで新しいメールCampaignを作成します。Edit Email Bodyをクリックします。
翻訳を挿入するには、ドキュメントの最上部または翻訳が必要な最初の位置の直前に、HTML内にコネクテッドコンテンツリクエストを追加する必要があります。これは、以下のマークアップを挿入することで実現できます:
{% connected_content https://exports.live.lokalise.cloud/braze/123abc/456xyz/{{${language}}}.json :save translations %}
https://exports.live.lokalise.cloud/... URLを、前のステップで取得した翻訳ファイルのURLに置き換えます。
{{${language}}}は、「この位置にユーザーの言語を挿入する」という意味です。あるいは、言語コードをハードコードすることもできます。たとえば、en.jsonのようにします。- 各ユーザーに適切な翻訳JSONファイルが取得されるようにするには、
{{${language}}}プロファイル属性か、ユーザーの言語を保持する別の同様のカスタム属性を翻訳ファイルURLの末尾に配置する必要があります(たとえば、/{{${language}}}.json)。これらの属性に保持される値は、翻訳されたJSONファイルのそれぞれのプレフィックスと一致しなければなりません。これにより、各ユーザーに対して正しい翻訳ファイルが返されるようになります。
- 各ユーザーに適切な翻訳JSONファイルが取得されるようにするには、
:save translationsにより、JSONコンテンツがtranslations変数に保存されます。
翻訳を表示する
translations変数を使用して、必要な翻訳をキーで表示します。
たとえば、descriptionキーを表示するには{{ translations.description }}を使用します。

最後に、メールテンプレートを保存し、プレビューします。翻訳が表示されるはずです。
よくある質問
誤ってLokaliseからキーを削除した場合はどうなりますか?
Brazeの対応する文字列には翻訳が表示されなくなります。
enロケールを持っているが、Lokaliseでen-USで上書きした場合、Brazeはen-USとして読み込みますか?
いいえ、ロケールのISOコードはBrazeとLokaliseで一致している必要があります。
Lokaliseコンテンツを接続するときに:rerenderフラグを使用できますか?
はい、使用できます。このフラグの追加方法については、Brazeのドキュメントを参照してください。
Lokaliseで翻訳ファイルを更新した後、Brazeで翻訳内容に変更が反映されないのはなぜですか?
Brazeでは翻訳コンテンツがキャッシュされ、その更新には数分かかることがあります。Campaignをテストしていて、翻訳の結果をすぐに確認する必要がある場合は、このリファレンス記事で説明されているように:cache_max_ageパラメーターを使用できます。