外国語自動翻訳機能

バージョン1.13.0よりCMSの公開画面を外部のAPIにより自動翻訳する機能を追加しました。

概要

公開画面のHTMLを外国語に自動翻訳する機能です。

翻訳先の言語(日本語→英語 など)と、APIを設定することで、公開画面を翻訳できます。
APIは Microsoft Translator Text API または Google Translate API を設定可能です。
APIはサブスクリプション、翻訳文字数によって課金が発生します。
実際の課金額については、利用するAPIのドキュメントを確認してください。

翻訳の切り替えは、専用のパーツを用意しており、公開画面に設置すると、言語を切り替えるプルダウンが表示されます。
プルダウンから言語を選択すると、翻訳先のURLに遷移します。
遷移後、HTML内のテキストをAPIに送信し、翻訳結果を置換、表示します。
一度、翻訳された箇所はキャッシュとしてデータベースに保存されます。
翻訳キャッシュは管理画面にて確認、編集可能です。

公開画面の翻訳およびキャッシュの作成は、翻訳先のURLアクセス時に動的に実行されます。
注意点として、公開画面翻訳の際、JavaScriptで動的に追加された要素の翻訳は対応していません。

設定

自動翻訳機能を利用するには、シラサギの設定とAPIの準備が必要です。

言語設定

管理画面の サイト設定>自動翻訳>言語 を開くと利用可能な言語一覧が表示されます。
seedからデモデータを登録した場合、言語が設定されますが、
設定されていない場合、以下のCSVを手動でインポートしてください。
lang.csv

API設定

管理画面の サイト設定>自動翻訳>設定 を開くと基本情報とAPI設定が表示されます。
ステータスを有効にして、元言語コード、翻訳言語コードを選択してください。
言語設定で設定した言語を選択可能です。

次に利用するAPIを設定してください。

Microsoft Azure API

  1. Microsoft Azure アカウント準備
    APIを利用する Microsoft Azure アカウントを用意します。
    クレジットカードを登録して、適切なサブスクリプションを設定する必要があります。

  2. リソースの作成
    用意したアカウントで Microsoft Azure Portal にサインインします。
    ポータルからリソースの作成をクリックします。
    Marketplaceの検索が表示されるので Translator Text と入力して検索します。
    Translator Text が検索にヒットしますので、作成をクリックします。
    名前、サブスクリプション、価格レベル、リソースグループを適切に設定し保存すると、リソースのデプロイが開始されます。
    デプロイが完了した後、リソースに移動をクリックします。

  3. サブスクリプションキーの取得
    2で作成したリソースに遷移します。
    リソース管理>クイックスタートに開始するためのキー(key1)が表示されます。
    このkey1の値をメモします。

  4. シラサギの設定
    APIで Microsoft Translator Text API を選択します。
    サブスクリプションキー に 3 でメモしたkey1を入力し、保存します。

Google Translate API

  1. Google アカウント準備
    APIを利用する google アカウントを用意します。
    クレジットカードを登録して、適切なサブスクリプションを設定する必要があります。

  2. Cloud Translation API 有効化
    用意したアカウントで Google Cloud Platform にサインインします。
    ダッシュボードから APIとサービス>ライブラリ を選択します。
    Cloud Translation API を検索して有効に設定してください。

  3. プロジェクトの設定
    ダッシュボードからAPIを利用するプロジェクトを選択してください。
    プロジェクトが無い場合は新規作成してください。
    プロジェクトIDをメモしてください。

  4. 認証情報作成
    ダッシュボードから認証情報を選択してください。
    “+認証情報を作成” をクリックして サービスアカウント を選択してください。
    サービスアカウントの名前、IDを入力して続行をクリックします。
    役割を選択で Project>オーナー を選択して続行をクリックします。
    “+キーの作成” をクリックします。
    キーのタイプ JSON を選択して、作成ボタンを押すと、秘密鍵がダウンロードされるので、保管してください。

  5. シラサギの設定
    APIで Google Translate API を選択します。
    プロジェクトID に 2でメモしたIDを入力します。
    サービスアカウント秘密鍵 に 3でダウンロードした秘密鍵を登録し、保存します。

APIリクエスト文字数制限

APIに翻訳テキストを送信すると、APIリクエスト文字数がカウントアップされます。
文字数上限を設定しておくと、設定上限を超えた際に、公開画面にエラーを表示し翻訳を停止します。
エラーのHTMLは制限超過時の表示HTMLに設定可能です。

翻訳ツールパーツ

翻訳言語を切り替えるため、パーツ “自動翻訳/翻訳ツール” を作成、設置してください。
公開画面で言語をプルダウンで切り替えられるようになります。