WPML

はじめに

以下のプラグインをインストールして有効化します。

  • Ninja Forms
  • WPMLおよびWPML 文字列翻訳
  • Ninja Forms Multilingual(このページで解説するアドオン)

サイトの翻訳元言語でNinja Formsのフォームを作成します。これには、マルチステップ構造、条件付きロジック、検証コピー、必要なアクション(成功メッセージ、送信リダイレクト、メール、インテグレーションアクション)が含まれます。フォームの機能が完成してから、翻訳ジョブを送信してください。

すべてを自動翻訳するによる処理

サイトですべてを自動翻訳するを有効にしている場合、手動でフォームを翻訳に送信する必要はありません。WPMLは、他のコンテンツとともに新規および更新されたフォームを検出し、バックグラウンドで翻訳します。以下のページ挿入の手順は引き続き適用されますが、フォームを翻訳に送信する手順は自動化されます。このページの残りの部分では、一部を翻訳する:翻訳するものを選択を使用しているサイト(または自動キューよりも先に翻訳したいフォーム)向けの手動での手順を説明します。

翻訳へのフォームの送信

  1. WPML > 翻訳 > ダッシュボードを開きます。
  2. Ninja Formsセクションを展開します。
  3. 翻訳するフォームにチェックを入れます。
  4. 翻訳方法を選択します。PTC(推奨)、翻訳者、または自分で翻訳から選択します。
  5. 翻訳をクリックします。

フィールド、オプション、アクション(成功メッセージ、メール、送信リダイレクト、インテグレーション)、およびフィールドごとの検証メッセージはすべて、同じ翻訳ジョブに含まれます。

翻訳済みページへのフォームの挿入

Ninja Formsはページや投稿内に配置され、通常はNinja Formsブロックまたは[ninja_form id="X"]ショートコードを使用します。多言語での挿入ルールは以下の通りです。

ページのすべての言語バージョンで同じブロックまたはショートコードを使用します。言語ごとに別々のフォームを作成しないでください。

手順:

  1. 翻訳元言語でフォームを1回作成します。
  2. フォームを翻訳に送信します(またはすべてを自動翻訳するで自動的に処理させます)。
  3. Ninja Formsブロックまたは[ninja_form]ショートコードを使用して、翻訳元言語のページにフォームを挿入します。
  4. 他のページを翻訳するのと同じように、WPML > 翻訳 > ダッシュボードからページを翻訳します。フォームの埋め込みは翻訳されたページでも保持されます。
  5. 訪問者が翻訳されたページを開くと、Ninja Forms Multilingualは自動的に訪問者の言語でフォームを表示します。同じフォームID、同じショートコードで、コンテンツが翻訳されます。

言語ごとに異なるフォームIDを用意する必要はありません。翻訳は翻訳元のフォームにリンクされており、Ninja Forms Multilingualがレンダリング時に適切な言語バージョンを解決します。

例外 – 言語ごとに全く異なるフォームを使用したい場合。言語ごとに構造的に異なるフォーム(異なるフィールド、異なるアクション、異なるロジック)が必要な場合は、別々のNinja Forms(言語ごとに1つ)を作成し、その翻訳用のWordPressエディタを使用して、一致する言語バージョンのページにそれぞれのショートコードを挿入します。言語間でショートコードが異なるのはこの状況のみです。

ページビルダーの注意点

ページがDivi、Elementor、またはその他のページビルダーで作成され、独自のテキストモジュールでショートコードをラップしている場合、ショートコードが翻訳時に正しく保持されないことがあります。翻訳されたページに翻訳元言語のフォームが表示される場合は、ページビルダーで翻訳されたページを開き、そこにフォームのブロックまたはショートコードを再挿入してください。ネイティブのWordPressブロックエディタやクラシックエディタでは、この問題は発生しません。

フィールドラベルとフィールドタイプ

Ninja Formsのすべてのフィールドラベル、プレースホルダー、オプションが翻訳ジョブに表示されます。テキスト、段落、名前、メール、住所、電話番号、リスト(選択、ラジオボタン、チェックボックス、複数選択)、数値、日付/時刻、ファイルアップロード、送信など、すべてのフィールドカタログを翻訳できます。

リピーターフィールドは行レベルで翻訳されます。行追加ボタンのラベルと行ごとの各フィールドラベルが翻訳ジョブに含まれます。翻訳者にはリピーター構造がそのまま表示され、各サブフィールドのラベルが翻訳可能な行として扱われます。

画像選択フィールド

画像選択フィールドは、サムネイルとテキストラベルをペアにします。Ninja Forms Multilingualは画像自体を共有したまま、言語ごとにラベルを翻訳します。画像ベースのセレクターはすべての言語で同じように機能し、キャプションのみが翻訳されます。

マルチステップフォーム

マルチステップフォームの場合、各ステップの見出しとステップごとのナビゲーションボタン(前へ次へ送信)は、それぞれ独自の行として翻訳されます。ステップごとの条件付きロジックは翻訳後も保持されます。値マップにより、基となる選択肢の値が言語間で一致した状態に保たれます。

翻訳後、各言語でマルチステップのフローを実行し、ナビゲーションが自然に読めること、および条件分岐が適切なステップで機能することを確認してください。

レイアウトとスタイル

Ninjaのレイアウトとスタイルのデザイナー出力は、レイアウトを失うことなく翻訳されます。グリッド、列、視覚的なスタイルは維持され、言語ごとに文字列コンテンツのみが変更されます。特別な手順は不要です。フォームを翻訳するとレイアウトも適用されます。

進捗の保存

進捗の保存が有効になっているフォームでは、訪問者側のプロンプトが翻訳されます。

  • 進捗を保存ボタンのラベル
  • 再開リンクのメールの件名と本文
  • 保存後の成功メッセージ

これら3つはすべて翻訳ジョブに含まれます。翻訳後、各言語でフォームの途中で保存し、再開メールが正しい言語で届くかテストして確認してください。

フィールドごとの検証メッセージ

各フィールドには独自の検証コピー(必須フィールドエラー、フォーマットエラー、カスタム検証メッセージ)があります。それぞれが翻訳ジョブに表示されます。アンチスパムとハニーポットのコピーは、(フォームの翻訳ジョブではなく)WPML 文字列翻訳を通じて翻訳されます。

成功メッセージアクションと送信リダイレクトアクション

成功メッセージアクションのインラインのサンキューテキストは言語ごとに翻訳されます。送信リダイレクトアクションのURLも翻訳可能です。言語ごとに異なるサンキューURLを設定し、送信後に訪問者が言語に合ったページにアクセスできるようにします。

メールアクション

フォーム上のすべてのメールアクションは個別に翻訳されます。宛先送信者名件名、およびメールメッセージはすべて翻訳ジョブに表示されます。複数のメールアクション(例:管理者通知と訪問者確認)があるフォームでは、各アクションが個別に翻訳されるため、言語ごとのコピーは独立しています。

既知の制限事項

メールアクションテンプレート内のマージタグは言語ごとに翻訳されません。マージタグの挿入には翻訳元言語のテンプレートが使用されるため、フォームデータは置き換えられますが、周囲の文は翻訳元言語のままになります。これはエラッタページで追跡されています。回避策:言語の違いが重要になる箇所では、マージタグを使用せずに周囲の文を作成するか、重要度の低いコピーについてはこの制限を受け入れます。

インテグレーションアクション

Ninja Formsのアクションアーキテクチャでは、すべてのインテグレーションがフォームごとのワークフローステップになります。各アクションの訪問者向けコピーは以下のように翻訳されます。

  • Webhookアクション。リクエスト本文と訪問者向けのラベルが翻訳されます。フィールド値は正規のまま保持されるため、受信側のエンドポイントが壊れることはありません。
  • Mailchimp / AWeber / Constant Contact / ActiveCampaign / Campaign Monitor / CleverReach / Drip / EmailOctopus / Emma / Kit / MailerLite / MailPoet。リスト、セグメント、タグのラベルがフォームレベルの文字列として存在する場合、それらが翻訳されます。
  • HubSpot / Salesforce / ZohoCRM。パイプライン、ステージ、フォームのラベルが翻訳されます。
  • Zapier / Slack / Trello。チャンネル、ラベル、Webhookフォーム名の文字列が翻訳されます。

支払いインテグレーション(StripeAuthorize.netElavonPayPal)の場合、購入の説明と訪問者向けのボタンラベルが翻訳されます。決済代行会社のテストモードを使用して各言語でテスト取引を実行し、領収書のコピーが正しく届くことを確認してください。

既知の制限事項 – PDFフォーム送信

Ninja Forms PDF Form Submissionアドオンは、翻訳が設定されたフォームでNinja Forms Multilingualが有効になっている場合、PDFを生成しません。これはサポートページで追跡されています。回避策:互換性が解決されるまで、翻訳されたフォームではPDFアドオンを無効にしてください。

よくある落とし穴

  • メールアクションの本文で、マージタグの周囲が翻訳されていない。既知の制限事項です(上記参照)。マージタグの挿入箇所の外側に翻訳されたテキストを配置するようにメール本文を再構築するか、この制限を受け入れます。
  • 管理者への通知メールが翻訳元言語で届く。テストしているメールアクションが、最後の編集後に翻訳に再送信されていることを確認してください。それでも解決しない場合は、関連するサポートページでステータスを確認してください。
  • 翻訳されたフォームで条件付きロジックが機能しなくなる。翻訳後に翻訳元言語で選択肢のラベルが編集されました。値マップを更新するために、フォームを再度翻訳に送信してください。
  • PDFフォーム送信が機能しなくなる。互換性が解決されるまで、アドオンを無効にするか翻訳を削除してください。

執筆者: Amir · 最終更新日: 2026年7月2日

執筆者:Amir · 最終更新日:2026年7月2日