いくつかのPHPファイル(HTMLコード+ PHPタグ)を別の言語に翻訳する必要があります。Google Translator's Kitはこれを許可しますが、PHPタグをクリアし、class = ""属性(?!)を消去し、html、ヘッドタグなどを追加します。完全に役に立たない。
あらゆる種類の自動翻訳サービスを使用して、これらのファイルを(理想的にはバッチで)翻訳するにはどうすればよいですか?
ありがとう。
いくつかのPHPファイル(HTMLコード+ PHPタグ)を別の言語に翻訳する必要があります。Google Translator's Kitはこれを許可しますが、PHPタグをクリアし、class = ""属性(?!)を消去し、html、ヘッドタグなどを追加します。完全に役に立たない。
あらゆる種類の自動翻訳サービスを使用して、これらのファイルを(理想的にはバッチで)翻訳するにはどうすればよいですか?
ありがとう。
コードを国際化する必要があります。翻訳可能なすべての文字列を別のファイルに移動する必要があります。これにより、Googleでそれを突き止めて、結果を簡単にドロップできるようになります。
PHP I18Nのトピックを調査することは、やりがいのあることです。
bmargulies は、それを行う最も明確な方法です。ただし、時間がかかります。
ピンチに陥っている場合、または手抜きをしたい場合、比較的簡単な方法は、正規表現を使用してコードを自分でフィルター処理することです。複数行にわたって一致し (preg の /s フラグ)、一致を保存し、ハッシュに置き換えます。任意のハッシュ。それがどの言語の何にもマップされていないことを確認してください。HTML タグが Google にとって煩わしい場合は、HTML タグについても同じことを行います。
Google で翻訳します。
ハッシュを元に戻します。出来上がり!仕事終わり!さらに大胆な場合は、ハッシュを元に戻すのではなく、l18n に適した構造に置き換えると、さらに価値があることがわかります。
Gettext(つまりphp-gettext )のようなものを使用することは、それを行うための私見の最良のアプローチです。もう1つの広く使用されているオプションは、文字列を抽出してファイル(PHPまたはJSON)を分離し、これらを変換することです。ただし、さまざまなツールを使用して標準形式を使用するため、Gettextを使用することをお勧めします。
Google 翻訳ツールキットはドキュメント用であり、ソース コード用ではありません。プログラムの文字列をドキュメントとして整理し、Google 翻訳ツールキットで翻訳することができます。実際、それを行うソフトウェア プロジェクトがありますが、これは人為的なものです。ここで他の人が言うように、別の方法を使用する方がはるかに良いでしょう.
翻訳可能な文字列を別々のファイルに入れます。たとえば、YAML や JSON などを使用するか、文字列を PHP 配列として整理することができます (たとえば、MediaWiki ではこのように行われます)。各メッセージにはキーが必要です。言語ごとに 1 つのファイルを使用するか、すべての言語と言語ごとにグループ化された文字列を含む 1 つのファイルを使用します。(ちなみに、ISO 639-3 言語コードを使用してください。独自に作成しないでください。そうすれば、HTML lang 属性でそれらを再利用できます。)
このように文字列を整理したら、メッセージ キーと言語コードによってこれらのファイルから文字列を読み込む関数を記述し、これらの関数を使用してメッセージを表示します。ハードコードされた文字列は決して使用しないでください。
最後に、Pootle、Transifex、Zanata、または MediaWiki Translate 拡張機能などのソフトウェアを使用して、ファイルを翻訳用にアップロードします。
(免責事項: 私は MediaWiki Translate 拡張機能の開発者です。)