web-dev-qa-db-ja.com

Joomlaを複数の言語で構成するにはどうすればよいですか?

Joomlaがバージョン1.6以降で複数の言語をサポートしていることを知っていますが、Joomlaを構成して多言語コンテンツ/モジュールを設定する正しい方法は何ですか?

2
johanpw

Joomlaは、正しく設定されていれば、多言語のWebサイトに最適なシステムです。サードパーティの拡張機能は必要ありません。ただし、設定は必ずしも直感的ではありません(ただし、Joomlaの最新バージョンはインストール中に自動的に設定できます)。

すべてのピースをまとめる方法の簡単なガイドは次のとおりです。

1.言語をインストールする

Joomlaで使用したい言語をインストールする必要があります。言語は here で見つかり、他のJoomla拡張機能と同じようにインストールできます。
Joomla 3には、言語マネージャーから直接言語をインストールするオプションがあります。

2.コンテンツ言語を追加する

言語マネージャーでContentタブをクリックし、ツールバーのNewをクリックして新しいコンテンツ言語を設定します。

  • Title:言語をアイテムに割り当てるときにドロップダウンリストに表示される言語の名前。このタイトルは、フラグが使用されていない場合、フロントエンドのlangswitcherモジュールでも使用されます。
  • Title Native:コンテンツ言語リストに表示するために管理者が希望する任意の言語のタイトル。
  • URL言語コード:この言語コードはサイトのURLに追加されます。 SEFを有効にすると、 http://mysite.com/en/ が取得されます。 SEFが無効になっている場合、サフィックス&lang = enがURLの最後に追加されます。言語コードはすべての言語間で一意でなければならないことに注意してください。
  • Image Prefix:[Use image flags]を使用する場合のこの言語の画像ファイルの接頭辞。例:「en」を選択した場合、画像はen.gifになります。このモジュールの画像とCSSはmedia/mod_languages /にあります。ユーザーは任意の画像/フラグを任意のプレフィックスで追加できます。例:ブラジルの旗の場合はpt_br。
  • 言語タグ:言語タグの例をここに入力します:英語(英国)の場合はen-GB。これは、インストールされる、またはインストールされる言語に使用される正確なプレフィックスである必要があります。
  • Status:このコンテンツ言語が公開されているかどうか。公開されると、フロントエンドの言語切り替えモジュールの選択肢として表示されます。
  • Metadata:これらのメタデータ定義は、使用される各言語の多言語構成のグローバル構成メタデータをオーバーライドします。
  • サイト名:サイトの翻訳された名前を使用する場合に選択します。

追加するすべての言語について、このプロセスを繰り返します。

English (UK) content language
英語(UK)のコンテンツ言語からのスクリーンショット:

3.言語フィルターを構成する

Joomlaプラグインマネージャーに移動し、System - Language Filterプラグインを見つけます。このプラグインには、必要に応じて変更できるいくつかのオプションがあります。すべての設定を構成したら、プラグインをpublishすることを忘れないでください。

4.メニュー項目を作成する

Joomlaでは、All言語のデフォルトページに加えて、言語ごとに「デフォルトページ」を設定する必要があります。

言語ごとに新しいメニューを作成することをお勧めします(Menuに移動>新しいメニューを追加)およびAll言語のデフォルトページの非表示メニュー。 All言語のデフォルトページを作成します(または既存のページを保持します)。追加言語ごとにデフォルトのページを作成し、「デフォルトページ」を「はい」に、「言語」を対応する言語に設定します。

(メニューの作成時に「言語」リストに言語が表示されない場合は、コンテンツ言語の設定にエラーがある可能性があります。)

完了すると、メニュー構造は次のようになります。

Main Menu (or Hidden menu)
   - Home (set as a Home in menu item list, language: ALL)
Menu for English Language
   - Home for English Lang (set as a Home in menu item list, language: English)
Menu for Spanish
   - Home for Spanish (set as a Home in menu item list, language: Spanish)

Menusドロップダウンには、対応するフラグとメニュー名が表示されます。

5.言語スイッチャーモジュールを追加します(オプション)。

言語スイッチャーはデフォルトのJoomlaモジュールの一部であり、モジュールマネージャーから他のモジュールと同じように追加できます。テンプレートの任意の位置に公開し、必要に応じてモジュール設定を変更します。また、URLに/URLlanguagecode/を追加して、URLで直接(またはリンクを使用して)言語を変更することもできます(例:www.mysite.com/es)。

6.コンテンツを複製する

多言語Joomlaサイトでは、すべての記事とモジュールに特定の言語または「すべて」を割り当てることができます。記事を分離するために、言語ごとにカテゴリを作成することをお勧めします。バッチツールを使用して、対応する言語を各記事に割り当てるか、必要に応じてコンテンツを複製します。同じ方法をモジュールでも使用できますが、特定のメニュー割り当てを持つモジュールはそれに応じて構成する必要があることに注意してください。

7. 404エラー

多言語サイトを構築するときに404-Not Foundエラーが表示されることはよくあります。これは通常、表示しようとしている記事の言語がメニュー項目の言語と異なるためです。

2
johanpw