ナビゲーションをスキップする
更新済み
2月 6, 2025

String Translationページで翻訳したい文字列が見つからない場合は、よくある理由とその場所を見ていきましょう。

最もよく検索される文字列

翻訳可能なハードコードされた文字列

何が起こっているのか?

なぜこれらの文字列が見つからないのか?

解決策

何が起こっているのか?

テーマやプラグインが完全に翻訳されているのに、フロントエンドで一部または全ての翻訳が表示されない。

なぜこれらの文字列が見つからないのか?

テーマやプラグインを追加した後に言語を設定したため、WordPressが翻訳ファイルを更新しなかった。

何が起こっているのか?

テーマやプラグインが一部の言語に完全に翻訳されていない。

または

テーマやプラグインの翻訳を使用せず、独自の翻訳を追加したい。

なぜこれらの文字列が見つからないのか?

デフォルトでは、WPMLはこれらの文字列を読み込みません。これはString Translationテーブルをクリーンで管理しやすい状態に保つのに役立ちます。

管理画面と設定の文字列

何が起こっているのか?

なぜこれらの文字列が見つからないのか?

解決策

何が起こっているのか?

テーマやプラグインの設定、オプション、メールテキストを 翻訳したい。

なぜこれらの文字列が見つからないのか?

デフォルトでは、WPMLはこれらの文字列を読み込みません。これはString Translationテーブルをクリーンで管理しやすい状態に保つのに役立ちます。

動的な文字列

何が起こっているのか?

なぜこれらの文字列が見つからないのか?

解決策

何が起こっているのか?

名前や注文番号のような変化する要素、特定の条件で表示されるテキスト、またはユーザーが生成したテキストのプレースホルダーを含む テキストを翻訳したい。

なぜこれらの文字列が見つからないのか?

String Translationでは、特定の条件に基づいて変更されるテキストが、「hello, John!」「の代わりに」「hello, %s!」のようなプレースホルダーテキストで表示されることがあります。画面に表示されている正確なフレーズを検索しても、これらのプレースホルダーのために結果が返されない場合があります。

ユーザープロフィールの文字列

何が起こっているのか?

なぜこれらの文字列が見つからないのか?

解決策

何が起こっているのか?

ユーザープロフィールの名前や経歴情報を翻訳したい。


なぜこれらの文字列が見つからないのか?

デフォルトでは、WPMLはこれらの文字列を読み込みません。これはString Translationテーブルをクリーンで管理しやすい状態に保つのに役立ちます。

その他の文字列

何が起こっているのか?

なぜこれらの文字列が見つからないのか?

解決策

何が起こっているのか?

翻訳がすべてのサーバーで同期されていない


なぜこれらの文字列が見つからないのか?

String TranslationはMOファイルを1つのサーバーにのみ保存します。サイトが複数のサーバーで運用されている場合、他のサーバーが処理するリクエストでは文字列が翻訳されません。

テーマとプラグインの翻訳の更新

多くのWordPressテーマとプラグインには独自の翻訳が付属しています。あなたのものにあるかどうかを確認するには、WordPressテーマリポジトリWordPressプラグインリポジトリにアクセスしてください。そして、あなたのテーマまたはプラグインのページに行き、言語(プラグイン用)または翻訳 (テーマ用)というラベルのついたセクションで翻訳ステータスを確認してください。

WordPressプラグインの言語セクション

WordPressテーマの翻訳セクション

翻訳済みのテーマやプラグインをインストールした後にWPMLで言語を設定した場合、これらの翻訳がフロントエンドで見つからないように見える場合があります。

以下は表示する方法です:

  1. サイトの管理画面から、ダッシュボード → 更新に移動します。
  2. 翻訳セクションまでスクロールし、翻訳を更新をクリックします。
テーマの翻訳の更新

これで、以前は見つからなかったテーマの翻訳がフロントエンドで表示されるようになりました。更新された翻訳が表示されるはずです。

テーマやプラグインが提供する翻訳が気に入らない場合は、翻訳の編集と更新方法をご覧ください

一時的に自動文字列登録を有効にする

以下を翻訳したい場合は、一時的に自動文字列登録を有効にすることができます:

  • 翻訳可能なハードコードされた文字列は、通常、サイトのテーマやプラグインから来ます。テーマやプラグインには多くの翻訳可能な文字列が含まれています。ユーザーとString Translationテーブルに負担をかけないように、WPMLはすべての文字列を自動的にロードしません。また、テーマやプラグインが更新されるたびに自動スキャンを行うこともありません。例えば、送信ボタンやカートに正常に追加されましたというメッセージなどがあります。
  • 動的な文字列は、コード内で静的ではなく、特定の条件やアクションに基づいて変化します。例えば、挨拶が「おかえりなさい、ジョン!」と表示されることもあれば、「おかえりなさい、エミリー!」と表示されることもあります。これは、基礎となるコードに「おかえりなさい、%s!」というようなプレースホルダーがあるためです。

これらの種類の文字列を翻訳するには、まずWPML → String Translationに移動し、文字列の自動登録機能を有効にする必要があります。

重要:文字列の自動登録オプションを有効にすると、WPMLはあなたや他のユーザーがフロントエンドで訪れたページ上の未翻訳の文字列を特定します。最良の結果を得るには、別のタブを開き、翻訳したい文字列があるページに移動してください。WPMLが文字列を見つけたら、この機能をオフにしてString Translationページを更新してください。テーブル内に翻訳可能な文字列が表示されるはずです。

翻訳のための文字列の自動登録を有効にする

String Translationから文字列を削除する

あなたやサイト訪問者が文字列の自動登録を有効にしたまま複数のページをブラウズした場合、String Translationテーブルに多くの新しい文字列がロードされている可能性があります。これらの多くは同じドメインから来ている可能性があり、翻訳する必要がないかもしれません。

特定のドメインからの文字列をまったく翻訳する予定がない場合は、それらをすべて一度に削除できます。これを行うには、文字列を削除ボタンをクリックします。次に、ドメインを選択し、削除をクリックしてそのドメインからのすべての文字列をString Translationから削除します。

ドメインごとの文字列の削除

テーマまたはプラグインのスキャン

サイトのテーマやプラグインの文字列をスキャンするべきなのは以下の場合のみです:

  • テーマとプラグインの翻訳の更新が機能しなかった場合
  • テーマやプラグインが提供する翻訳を自分のものに置き換えたい場合
  • テーマやプラグインがあなたの言語に翻訳されていない場合

スキャンは、テーマやプラグインから来るすべての文字列をString Translationテーブルにロードします。これには、サイトのバックエンドにも表示される文字列が含まれます。結果として、テーマやプラグインをスキャンすると、String Translationに数百または数千の新しい文字列が追加される可能性があります。

部分的に翻訳されたテーマやプラグインをスキャンすると、String Translationテーブルですべての文字列が翻訳を必要とするように見えます。これはプラスアイコンで示されます。アイコンをクリックすると、既存の翻訳が表示され、それを使用するか、自分の翻訳で上書きするかを選択できます。

テーマまたはプラグインをスキャンするには:

  1. WPML → テーマとプラグインのローカライゼーションに移動し、 テーマまたはプラグインを選択します。
  2. スキャンをクリックします。
文字列のためのテーマのスキャン

これで、String Translationページで文字列を見つけることができるはずです。

管理画面と設定からの文字列の翻訳

WordPressサイトの管理エリアからカスタマイズできるが、サイト訪問者のフロントエンドに表示されるテキストを翻訳したい場合があります。これには以下が含まれます:

  • テーマオプションパネルからのテキスト(フッターテキスト、著作権表示、カスタムメッセージなど)
  • プラグインのオプションや設定で設定されたラベル、メッセージ、その他のカスタムテキスト
  • 時間形式などのWordPressコア設定の一部
  • ウィジェットのタイトルやコンテンツの一部(特にWordPress管理画面に設定があるもの)

多くのテーマやプラグインは、これらの種類のテキストを wp_optionsテーブルに保存しています。これらのテキストを翻訳するには、まず登録する必要があります:

  1. WPML → String Translation に移動します。
  2. ページの下部までスクロールし、管理画面のテキストを翻訳するリンクをクリックします。
String Translationページの下部にある管理画面のテキストを翻訳するリンク
  1. これにより、管理文字列の検索可能なリストに移動します。文字列を選択し、String Translationに追加をクリックします。または、WPML設定ファイルとしてエクスポートをクリックして、言語設定ファイルで使用するコードスニペットを生成することもできます。
管理文字列を選択してString Translationに追加する

これで、String Translationページで文字列を確認し、翻訳できるようになりました。

ユーザーメタ情報を翻訳可能にする

WordPressでは、ユーザープロフィールに名前、ニックネーム、経歴などの情報のフィールドがあります。一部のプラグインでは、このカスタマイズ可能なユーザー情報をフロントエンドに表示することができます。例えば、投稿に著者ボックスを追加するなどです。

このユーザー情報を翻訳するには、まずユーザーのタイプを翻訳可能にする必要があります:

  1. WPML → String Translationに移動し、その他のオプションセクションまでスクロールします。
  2. 編集をクリックし、翻訳可能にしたいユーザータイプを選択します。その後、適用をクリックします。
ユーザータイプの翻訳を有効にする
  1. String Translationページを更新し、ドメイン内ドロップダウンメニューを使用して著者ドメインを検索します。
著者ドメイン内の文字列を検索する

リストに翻訳可能なフィールドの名前が表示されるはずです。特定のフィールドがまだ表示されない場合は、ユーザー → プロフィールに移動し、スペースや単語を追加してフィールドに小さな変更を加えてください。変更を保存すると、String Translationテーブルに文字列が表示されるはずです。

ユーザーメタデータの翻訳についてさらに詳しく

複数のサーバーで実行されているサイトの翻訳ファイルを同期する

デフォルトでは、String Translationは1つのサーバーにのみMOファイルを保存します。これは、サイトが複数のサーバーで実行されている場合、他のサーバーで処理されるすべてのリクエストが文字列を翻訳しないことを意味します。

WPML 4.4.0以降では、サーバー間でMOファイルを同期するカスタムモードを有効にできます。これを行うには、wp-configファイルに以下を追加してください:

define( 'WPML_ST_SYNC_TRANSLATION_FILES', true );

注意:この同期モードは、サイトのパフォーマンスに影響を与える可能性のある別のロジックレイヤーを追加します。必要な場合にのみ使用することをお勧めします。

翻訳したいテキストのソースを見つける

時には、String Translationで一部のテキストが見つからない場合があります。これは、異なる翻訳方法が必要なためです。例えば、テンプレートやフォームから来るほとんどのテキストは翻訳管理を使用して翻訳できます。

String Translationでテキストを翻訳用に登録しようとする前に、そのテキストがどこから来ているのかを把握しようとしてください。

以下は簡単なガイドです:

テキストの種類これらのテキストはどこで翻訳しますか?
テンプレートから来るテキスト(WordPressサイトエディターテンプレートElementorテンプレートなど)翻訳管理ダッシュボード
Advanced Custom Fields(ACF)からのフィールドラベルと値割り当てられたフィールドを持つ投稿/ページを翻訳する際
WordPressフォームとフォームフィールド(Contact Form 7Gravity Formsなど)翻訳管理ダッシュボード

それでもテキストを翻訳できない場合は、WPMLサポートにお問い合わせください。翻訳したいテキストは、特定の翻訳ワークフローが必要なテーマやプラグインから来ている可能性があります。またはWPMLと互換性がない可能性もあります。
また、テーマやプラグインが作者によってローカライズされていない場合、一部またはすべてのテキストを翻訳できない可能性があることにご注意ください。