WPML 3.2の最初のパブリックベータ版の準備が整いました。このリリースは何ヶ月にもわたる開発の成果であり、WPMLに多くの新機能をもたらします。
翻訳バスケット

たとえば、サイトにショーケースを追加し、それを翻訳したいとします。
まず翻訳ダッシュボードを開き、ショーケースが表示される新しいページを選択します。それをバスケットに追加します。
次に、フィルターを変更して「ショーケースエントリ」タイプを選択します。翻訳したいショーケースエントリをバスケットに追加します。
最後に、文字列翻訳画面に移動し、ショーケースのテーマに表示される文字列(「サイトを表示」、「リンク」など)を見つけます。これらをすべて選択し、バスケットに追加します。
この時点では、まだ何も翻訳に送信されていません。翻訳バスケットに移動し、追加したすべての内容を確認して、一括で翻訳に送信します。後で内容を思い出せるように、バッチに名前を付けることができます。
関連するすべての情報をまとめて送信すれば、翻訳者にも喜ばれるでしょう。また、テーマごとにグループ化されているため、翻訳の進捗を把握するのもはるかに簡単になります。
翻訳バスケットにより、翻訳への送信が大幅に改善されました。気づかないかもしれませんが、WPMLはバスケットのコンテンツをAJAX更新を使用してチャンク(分割)で送信するようになりました。つまり、バスケットに無制限のコンテンツを入れ、1つの大きなパッケージとして送信できます。サーバーのタイムアウトを心配する必要はありません。WPMLは小さなチャンクで送信しますが、翻訳者は引き続き1つのパッケージとして受け取ります。
翻訳サービス
もちろん、私たちは自社の翻訳サービスであるICanLocalizeを気に入っていますが、選択するのはあなたです。WPML 3.2では、さまざまなプロのサービスプロバイダーから選択できるようになります。現在、いくつかの主要な翻訳サービスと協力し、WPMLとの統合を進めています。
これで(ついに)APIを持つあらゆる翻訳サービスと連携する準備が整いました。この画期的な進歩は、新しい翻訳プロキシの成果です。

翻訳プロキシは、さまざまな翻訳サービスプロバイダーのプロトコルとWordPressサイトの橋渡しをする新しいサーバーです。これにより、WPMLはプロトコルを知らなくても、さまざまな翻訳サービスと通信できます。
WPMLはコンテンツを翻訳プロキシに送信します。翻訳プロキシはそれをキューに入れ、ネイティブAPIを使用して翻訳サービスに送信します。そのため、新しい翻訳サービスをサポートするために、世界中のすべてのWebサイトでWPMLを更新する必要はなくなりました。翻訳プロキシにサポートを追加するだけで、誰もが新しい翻訳サービスにアクセスできるようになります。
最初の翻訳パートナーは、Cloudwordsのチームです。過去数ヶ月間、WPMLと翻訳プロキシをCloudwords APIと統合するために、Cloudwordsと密かに協力してきました。WPML 3.2が本番環境向けにリリースされ次第、Cloudwordsから翻訳の作業を受け取ることができるようになります。
パッケージ翻訳
一部のプラグインやテーマは、独自のテーブルや複雑なデータ構造を使用してデータを保持しています。これは、ビジュアルエディタ、イベントマネージャー、ニッチ市場向けのテーマなどで見られます。
現在、WPMLはこれらのデータ構造を簡単に処理できます。

新しい翻訳パッケージの使用は非常に簡単です。データを保存する際に1つのフック(wpml_register_string)を呼び出すだけです。この1つのフックにより、オブジェクトに属する情報があることをWPMLに伝えます。フィールドを追加するために必要な回数だけ呼び出してください。
WPMLはこのすべての情報を収集し、翻訳可能なオブジェクトを構築します。その後、他のWordPressコンテンツと同様に、ユーザーは翻訳ダッシュボードを使用してそれらを翻訳できます。
レンダリングする際には、データをWPML_translate_stringフィルターに渡します。オブジェクトが翻訳されている場合、正しい言語の正しい文字列を受け取ります。
当社のLayoutsプラグインにWPMLサポートを追加するのに、わずか数行のPHPしか必要ありませんでした。言語についてあまり考えずにLayoutsプラグイン全体を作成しましたが、数時間で多言語対応にすることができました。
W3TCオブジェクトキャッシュとの互換性
WPML 3.2は、W3TCによるオブジェクトキャッシュをサポートすることで、サイトの実行速度を(大幅に)向上させます。オブジェクトキャッシュとは、ページのレンダリングごと(または多くの場合、ページのレンダリング中に複数回)に複雑なアイテムを再計算する必要がないことを意味します。
オブジェクトキャッシュエンジンは、「オブジェクト」が最近計算されたかどうかを確認します。計算されている場合は、再度計算する必要はありません。これにより、ページ全体をキャッシュできない動的サイトの速度を大幅に向上させることができます。
以前は、言語間でオブジェクトが混在していたため、WPMLでオブジェクトキャッシュが機能しませんでした。WPML 3.2では、オブジェクトキーをフィルタリングし、それに言語を追加することでこの問題を修正しています。
しかし、これはWPML 3.2における改善の一部にすぎません。文字列翻訳のコードもリファクタリングし、オブジェクトキャッシュで機能するように大幅に最適化しました。
サイトの文字列が少ない場合、大きな改善には気づかないでしょう。大量の文字列があるサイト(WooCommerceサイトなど)を運営している場合は、特にオブジェクトキャッシュを備えたW3TCを使用すると、速度が大幅に向上したと感じるはずです。
XLIFFとTranslation Analyticsの統合
WPML 3.2には、翻訳管理モジュール内にXLIFFモジュールとTranslation Analyticsの両方が含まれています。WPMLをさまざまな翻訳サービスに開放する一方で、すべてにXLIFFファイルを使用するように移行したため、これら3つを統合しました。そのため、WPML用の個別のXLIFFモジュールはもう必要ありません。XLIFFは最高です!
既知の問題
Gravity Formsの新しいバージョンがWPMLで正常に動作しないようです。これはWPML 3.2に完全に関連しているわけではありませんが、現在調査中です。
また、WPML 3.2では、当社のCREDプラグインが使用する呼び出しが非推奨になります。WPML 3.2と完全に互換性を持たせるため、CREDのアップデートをリリースする予定です。
このバージョンのWPMLは、(まだ)本番サイト向けではありません。ICanLocalizeを含む、いかなるプロの翻訳もサポートしていません。
ダウンロードとフィードバック
WPMLアカウントからWPML 3.2ベータ版を入手できます。ログインして「ダウンロード」をクリックし、最新のベータ版を入手してください。このZIPファイルには、WPMLのすべてのコンポーネントのZIPファイルが含まれています。ローカルで解凍し、使用しているコンポーネントをアップロードしてください。
XLIFFまたはTranslation Analyticsがインストールされている場合は、競合を避けるためにそれらを無効にしてください。それ以外の場合は、使用しているすべてのWPMLコンポーネントを更新してください(「本番用」と「ベータ版」のコンポーネントを混在させないでください)。
全体として、WPML 3.2ベータ版は最終バージョンにかなり近いです。ぜひお試しいただき、開発サイトでご活用いただければ幸いです。
今後数週間以内にWPML 3.2をリリースする予定です。皆様からのフィードバックをお待ちしております。コメントを残していただければ、返信いたします。

