テーマ翻訳:実践編

閲覧数: 24(0)

テーマ翻訳についての理解を深めるため「実践編」として「Search Form(検索メニュー)」を翻訳(日本語化)する方法を説明します。「Fotografie」テーマではトップページなどに表示される「虫メガネ」アイコンをクリックすると小さなダイアログが現れます。何もしないと「英語」表記のままです。キーワードを入力するフィールドには「Enter Keyword…」その下のボタンには「SEARCH」と表示されます。このダイアログを表示しているのは以下のソースコードです。

<form role="search" method="get" class="search-form" action="<?php echo esc_url( home_url( '/' ) ); ?>">
        <label>
                <span class="screen-reader-text"><?php echo esc_attr_x( 'Search for:', 'label', 'fotografie' ); ?></span>

                <input type="search" class="search-field" placeholder="<?php echo esc_attr_x( 'Enter keyword&hellip;', 'placeholder', 'fotografie' ); ?>" value="<?php the_search_query(); ?>" name="s" />
        </label>

        <button type="submit" class="search-submit"><span class="search-button-text"><?php echo esc_html_x( 'Search', 'submit button', 'fotografie' ); ?></span></button>
</form>

これらのソースコードの中で「翻訳」したいのは、「’Search for:’」「’Enter keyword…’」「’Search’」の3つです。そのうち「’Search for:’」は翻訳ファイルにすでに含まれているので、ここで対応しなければならないのは後の2つということになります。もちろんここを直接修正しても表示は日本語化出来ますが、そのような「ハードコーディング」は後々のメンテナンス性低下を招くので、ここは面倒でも「WordPress」の国際化に従って処理をしたいと思います。具体的には翻訳ファイル(ja.po)に以下のような翻訳を追加すれば良いと思います。「msgstr」が実際に変換される文字列となるのでここはお好みで変更して下さい。

#: ../searchform.php:14
msgctxt "placeholder"
msgid "Enter keyword&hellip;"
msgstr "キーワードを入力"

#: ../searchform.php:17
msgctxt "submit button"
msgid "Search"
msgstr "検索"

「msgfmt」などで「ja.po」をバイナリファイル「ja.mo」にコンパイルすれば「翻訳」は完了です。ブラウザのロケール設定を見て「日本語」であれば「ja.mo」のメッセージを使用します。未翻訳のメッセージはオリジナル言語である「英語」で表記されます。この方法を覚えればクールなテーマで日本語未対応でも自分で対応することが出来るので「テーマ選択」の幅がぐっと広がります。中身も大事ですが見た目も大切ですw

【最終更新日: 2019年5月20日】
カテゴリーIT閑話, 公開タグ, ,
ページナビのテキスト
2021年4月1日

記事ページの下部に前後の記事(投稿)へのリンクが表示される仕様なのだが、「カテゴリーに制限」をかけて  続きを読む

閲覧数まとめ
blank
2021年3月25日

閃きついでに総合計と週合計をフラグで制御する方式に変更してみた。これまではベタに関数をまるまるコピー  続きを読む

閃きは大事だw
blank
2021年3月23日

このサイトは、あくまでもCMSであるWordPressの構築やクラウドであるAWSの運用ノウハウ取得  続きを読む

ElasticPress 3.5.6
blank
2021年3月19日

マイナーバージョンアップにも関わらず、検索スコアリングのパラメータが微調整された結果、期待する検索結  続きを読む

管理画面を制限する
blank
2021年2月22日

このサイトではネット上のさまざまな攻撃からの防御のため、Wordfenceプラグインの無料版を使用し  続きを読む

検索精度を高める
blank
2020年11月1日

検索ネタを連発するのはElasticsearchやElasticPressがバージョンアップした時の  続きを読む

スポンサーリンク

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください