WordPressテーマの国際化

Christopher Nolan
Christopher Nolanオリジナル
2025-02-10 10:01:15934ブラウズ

WordPressテーマの国際化

WordPressは、さまざまな種類のWebサイトを作成するために使用されます。 WordPressテーマを構築するときは、できるだけ多くのオーディエンスのために構築する必要があります。その目標はまた、あなたのテーマが異なる言語のサイトに備えているべきであることを意味します。 WordPressは、テーマで使用して国際化を提供できるシンプルなAPIを提供します。この記事では、テーマをさまざまな言語に対応する方法を確認します。

キーテイクアウト

    WordPressは、テーマを国際化できるAPIを提供し、さまざまな言語を話すユーザーがアクセスできるようにします。これには、サポートする言語の翻訳ファイルのダウンロードとインストールが含まれます。
  • WordPressテーマを国際化する最初のステップは、子テーマを作成し、そのための一意のテキストドメインを定義することです。このテキストドメインは、テーマの翻訳ファイルをロードするために使用されます。 __や_eなどの関数は、WordPressでテキストを国際化するために使用されます。 __関数は、選択した言語に基づいてローカライズされた文字列を返し、_e関数はページにローカライズされたテキストを直接表示します。
  • 実際の翻訳を含む.moファイルは、PoEDITなどのツールを使用して作成できます。これらのファイルが作成されて適切なディレクトリに保存されたら、WordPressテーマは選択した言語でコンテンツを表示する必要があります。
  • さまざまな言語用にWordPressを構成する方法
  • WordPressサイトに異なる言語を追加できます。そのために、WordPress Translatorチームのブログから翻訳ファイルをダウンロードできます。このページからは、翻訳が存在するさまざまな言語と、翻訳の割合が完了していることを確認できます。フランス語をダ​​ウンロードしたいとします。フランス語の列に行き、下の画像に示すようにパーセンテージをクリックします。
  • 次に、以下の画像に示すように、WordPressバージョンをクリックして.moファイルをエクスポートできます

.moファイルをダウンロードしたら、WordPressインストールのWPコンテンツ/言語フォルダーにアップロードする必要があります。その後、WordPress管理者の[> [一般]に移動できます。ここでは、画像に示すように、WPコンテンツ/言語フォルダーに入れた言語オプションを確認できるはずです。サイトを変更する目的の言語を選択し、[変更の保存]

をクリックしてくださいWordPressテーマの国際化

テーマにテキストドメインをロードする

あなたのテーマの国際化への最初のステップは、

テーマを作成することです。この例では、Theme Twentyeventeenの子供のテーマを作成して、開始できます。子テーマを作成するには、最初にフォルダーWPコンテンツ/テーマ/WPINTERNATIONLIZITIONTHEMEを作成します。このフォルダーで、次のコンテンツでファイルstyle.cssを追加します。 このファイルは、wpinternationlizationThemeという名前の子テーマを定義します。これは2ティーンセブンティーンの子供のテーマです。上記では、すべてのフィールドは、子供のテーマ用に定義する標準フィールドです。フィールドテキストドメインは、このテーマのテキストドメインの一意の名前を定義するフィールドです。このテーマは、このキーを含む翻訳ファイルを一意の識別子としてロードする必要があります。 次のコードを使用してfunctions.phpを作成します

<span>/*
</span><span> Theme Name:   wpinternationlizationtheme
</span><span> Description:  Twenty Seventeen Child Theme.
</span><span> Author:       Abbas Suterwala
</span><span> Author URI:   http://example.com
</span><span> Template:     twentyseventeen
</span><span> Version:      1.0.0
</span><span> Text Domain:  wpinternationlizationtheme
</span><span>*/
</span>
上記のコードでは、親のテーマ(この場合は27の)スタイルをロードします。その後、子テーマのスタイルがロードされます。

これにより、子供のテーマスタイルが最後にロードされたスタイルになり、子テーマのニーズに合わせてカスタマイズできます。これで、テキストドメインをロードする必要があります。つまり、このテーマの翻訳をWordPressがどこで検索するかを示すことを意味します。 WordPress関数load_theme_textdomainを使用して、テーマのテキストドメインをロードできます。

それを行うには、次のコードをfunctions.phpに追加します:

<span><span><?php
</span></span><span><span>function wpinternationlizationtheme_enqueue_styles() {
</span></span><span>
</span><span>    <span>$parent_style = 'parent-style'; 
</span></span><span>
</span><span>    <span>wp_enqueue_style( $parent_style, get_template_directory_uri() . '/style.css' );
</span></span><span>    <span>wp_enqueue_style( 'child-style',
</span></span><span>        <span>get_stylesheet_directory_uri() . '/style.css',
</span></span><span>        <span>array( $parent_style ),
</span></span><span>        <span>wp_get_theme()->get('Version')
</span></span><span>    <span>);
</span></span><span><span>}
</span></span><span><span>add_action( 'wp_enqueue_scripts', 'wpinternationlizationtheme_enqueue_styles' );
</span></span><span>
</span><span><span>?></span>
</span>
上記のコードは、afth_setup_themeアクションに接続します。そのアクションでは、テーマにテキストドメインをロードします。これは、関数load_theme_textdomainを使用して行われます。この関数は、次のディレクトリで.moファイルを探すように設定されています。

国際化のためのWordPress関数

テキストドメインをセットアップしたら、WordPressの国際化に使用できる関数を見てください。主に使用できる2つの関数があります。最初のものは__です。この関数は2つの引数を取ります。最初は文字列と2番目の引数です。この関数は、選択された言語に基づいてApproRiateのローカライズされた文字列を返します。

したがって、各投稿の最後にテキストを追加するだけでなく、言語選択に基づいてこれをローカライズしたい場合は、次のコードをfunctions.php:
<span>function wpinternationlizationtheme_setup(){
</span>    <span>$domain = 'wpinternationlizationtheme';
</span>    <span>// wp-content/languages/wpinternationlizationtheme/de_DE.mo
</span>    <span>load_theme_textdomain( $domain, trailingslashit( WP_LANG_DIR ) . $domain );
</span>    <span>// wp-content/themes/wpinternationlizationtheme/languages/de_DE.mo
</span>    <span>load_theme_textdomain( $domain, get_stylesheet_directory() . '/languages' );
</span>    <span>// wp-content/themes/wpinternationlizationtheme/languages/de_DE.mo
</span>    <span>load_theme_textdomain( $domain, get_template_directory() . '/languages' );
</span><span>}
</span><span>add_action( 'after_setup_theme', 'wpinternationlizationtheme_setup' );
</span>
に追加します。

他の関数は_eです。これは、__と同じ2つの引数を取ります。この関数は、単にそれを返すのではなく、ページにローカライズされたテキストを直接表示します。
- Languages directory
- Child theme directory 
- Parent theme directory
たとえば、ローカライズを表示するフッターメッセージを追加したい場合は、次のコンテンツでfooter.phpを作成する必要があります。
<span>/*
</span><span> Theme Name:   wpinternationlizationtheme
</span><span> Description:  Twenty Seventeen Child Theme.
</span><span> Author:       Abbas Suterwala
</span><span> Author URI:   http://example.com
</span><span> Template:     twentyseventeen
</span><span> Version:      1.0.0
</span><span> Text Domain:  wpinternationlizationtheme
</span><span>*/
</span>
.moファイルの作成

国際化に必要なコードを作成したら、ローカリゼーションファイルを作成する必要があります。 .moファイルを作成するために利用できる多くのツールがあります。この記事では、人気のあるものの1つであるPoeditを見ることになります。 https://poedit.net/downloadからオペレーティングシステム用のPoEDITをダウンロードできます。

PoEDITをダウンロードしたら、「ファイル - >新しいカタログ」を選択して、次の画面を表示できます。

この画面では、プロジェクトに関する基本情報を入力できます。次のタブは、以下に示すように、ローカライズする必要がある文字列を見つけるために解析する必要があるコードのパスを指定することです。

WordPressテーマの国際化次のタブでは、ローカリゼーションが必要なすべての文字列を取得するために検索する必要があるキーワードを入力できます。上記の例では、2つの関数__と_eをすでに使用しているため、この2つをこのタブに追加します。

これを実行したら、下の画像に示すように、このツールはローカリゼーションが必要なすべての文字列を検索します。 WordPressテーマの国際化

各文字列のローカリゼーションを追加し、[保存]をクリックして、WP-Content/Themes/wpinternationLizationTheme/Languages/fr_fr.mo

でファイルを保存できます。 WordPressテーマの国際化さて、最後に、言語を「フランス語」に変更すると、メインサイトでフランス語で文字列がローカライズされるのを見る必要があります。

結論

WordPressテーマの国際化WordPressは、最も人気のあるCMSプラットフォームの1つです。 WordPressのテーマ開発については、比較的簡単に学ぶことができます。 WordPressテーマで作成されたサイトのユーザーは、数と多様性が膨大です。したがって、テーマが幅広い言語を利用できるようにする必要があります。多くの業界では、WordPressサイトがさまざまな地域や国の聴衆に対応できるようにすることが絶対に必要です。

テーマを国際化の準備をすることは、成功の重要な要素になる可能性があります。国際化のためのWordPress APIは使いやすいです。コードファイルを変更せずにテーマを簡単にローカライズできます。だから、次のWordPressのテーマを国際化して楽しんで、以下のコメントであなたの経験について教えてください!

WordPressのテーマの国際化に関するよくある質問

WordPressのテーマを国際化することの重要性は何ですか?

WordPressテーマの国際化中に直面する一般的な問題は何ですか?

WordPressテーマの国際化中に直面するいくつかの一般的な問題には、欠損テキストドメイン、誤ったテキストドメイン名、および翻訳されていないテキストが含まれます。これらの問題は、テーマが完全に翻訳可能になるのを防ぐことができます。これらの問題を回避するには、すべてのgetText関数にテキストドメインを含め、正しいテキストドメイン名を使用し、すべてのテキストをgetText関数に包みます。 >

はい、WordPressのテーマを国際化するのに役立ついくつかのプラグインがあります。これらのプラグインは、.potファイルを生成し、翻訳を追加するためのユーザーフレンドリーなインターフェイスを提供し、テキストドメインをロードすることができます。ただし、プラグインを使用すると、テーマを国際化する手動プロセスを置き換えるべきではないことに注意することが重要です。

WordPressテーマの国際化をテストするにはどうすればよいですか?

WordPressのインストールの言語を変更することで、WordPressテーマの国際化をテストできます。テーマが適切に国際化されている場合は、テーマに翻訳されたテキストが表示されます。また、WordPressテーマチェックプラグインなどのツールを使用することもできます。これにより、一般的な国際化の問題についてテーマを確認できます。テーマは異なる言語に翻訳されますが、ローカライズは実際にテーマを翻訳するプロセスです。言い換えれば、国際化はテーマを翻訳可能にするための最初のステップであり、ローカリゼーションは実際の翻訳を追加する次のステップです。

WordPressテーマRTL言語を互換性のあるものにするには、テーマディレクトリにRTL.CSSファイルを作成する必要があります。このファイルは、RTL言語のテーマのレイアウトをめくるために必要なすべてのCSSルールを含める必要があります。 WordPressは、Webサイト言語がRTL言語に設定されているときにこのファイルを自動的にロードします。このプロセスは、親のテーマの国際化に似ています。ただし、getText関数で親テーマのテキストドメインを使用して、子テーマのfuncions.phpファイルにテキストドメインをロードする必要があります。

以上がWordPressテーマの国際化の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。