9月 07 2007

WordPressの「Continue Reading」を「続きを読む」に直してみる

Published by HoLY at 21:05:56 under tech

WordPress の「続きを読む」機能。この見た目が今のテーマでは「Continue Reading」になり日本語でないので分かりづらそうだったので、「続きを読む」という文字列に直してみました。

WordPressはgettextでメッセージカタログを利用しているので、要するにgettextでテーマのカタログを追加しようという話です。

今回利用しているテーマはSadish氏のpaalamテーマです。

まずOSにgettextのパッケージが入っていることを確認。入ってなければ入れます。xgettext コマンドと msgfmt コマンドを使います。

テーマファイルの中の翻訳可能な部分を xgettext で抜き出します。

$ xgettext --from-code=UTF-8 --keyword=__ -L PHP -o wp-content/languages/paalam.pot wp-content/themes/paalam/*.php

wp-content/languages/ja.po を編集します。paalam.pot のヘッダ以下の部分を ja.po の末尾に追加します。(注: msgmerge は使っていません。現在の ja.po に含まれるカタログの対象のファイルが無い場合もあるため。)

コメントは以下では量を削っていますが実際は残してあります。

#: wp-content/themes/paalam/archive.php:55
msgid "Continue Reading »"
msgstr ""

#: wp-content/themes/paalam/archive.php:59
msgid "No responses yet"
msgstr ""

#: wp-content/themes/paalam/archive.php:59
msgid "One response so far"
msgstr ""

#: wp-content/themes/paalam/archive.php:59
msgid "% responses so far"
msgstr ""

このカタログを翻訳します。すなわち、各 msgstr “” の部分を埋めます。

#: wp-content/themes/paalam/archive.php:55
msgid "Continue Reading »"
msgstr "続きを読む »"

#: wp-content/themes/paalam/archive.php:59
msgid "No responses yet"
msgstr "まだコメントはありません"

#: wp-content/themes/paalam/archive.php:59
msgid "One response so far"
msgstr "1件のコメントがあります"

#: wp-content/themes/paalam/archive.php:59
msgid "% responses so far"
msgstr "%件のコメントがあります"

これを変換。

$ msgfmt -o ja.mo ja.po

以上で修正は終了。意外に簡単ですね。

日本語環境ではない人には ‘Continue Reading’ に見えるようになるので、この手の修正には細かくても gettext を使っていきたいところです。テーマ作者の方々には、gettext を使ってもらえるように期待したいですね。:)

Trackback URI | Comments RSS

Leave a Reply