WordPressの日付表示を英語表記にする方法:WPアップグレード後にやること
しばらく前に WordPress を2.8にアップグレードしました。WordPress はすばらしいブログソフトウェアだと思いますが、アップグレードするといくつかの設定が初期化されてしまい、それをまたカスタマイズし直すのが若干面倒臭いと思う今日この頃です。その再設定の面倒さを解決する方法はひとまず措いておいて、備忘録というか自分用のメモとして設定の仕方を記事として残しておこうと思います。
前置きが長くなりました。今回は WordPress での日付の表示を英語表記にする方法です。
WordPress 日本語版をインストールすると、日付は「2009年8月30日」という風に表示されます。個人的に「August 30, 2009」のような英語表記のほうがかっこいい気がするので1、日付の表示方法を変更したいなと思うわけです。英語版をインストールすればいいというツッコミはひとまず無視しますw
基本的には以下でご紹介する小粋空間さんの記事に書いてあるようにやれば英語表記になります。
» 小粋空間: WordPress の月および曜日を英語表記にする
ただ、locale.php を弄る必要があり、初心者には難易度が高めですし、初心者じゃなくても面倒臭いですよね。ということで、面倒なことはプラグインにやってもらいましょう。以下で配布されている「EnglishDate」というプラグインをインストールすれば面倒なことをしなくても英語表記になります。プラグインを作ってくださっている方々に感謝です。
» 日本語版WordPressの曜日・月表記を英語にする方法 スタッフブログ 香川県 ホームページ制作会社 WEB CONSULTING FEEL
これで日付の表示は英語表記になったと思います。ただ、当ブログのアーカイブページのように「August, 2009」みたいな表記にしようとするとあと1ステップ必要になります。
おそらく、現段階では日付が「2009年 August」などのようになってしまっていると思います。これは正直かっこ悪いですね。「2009年8月」というように日本語表記のままのほうがましです。これを「August, 2009」にするには、ちょっとファイルを弄る必要があります。
以下の Chibiの覚え書きさんを参考にさせていただきました。どうもありがとうございます。
» サイドバー・アーカイブの日付フォーマット変更 | Chibiの覚え書き
ここの表記はwp-includes/general-template.phpの767行目をいぢるしかなさそう。
めんどいけど、やるかーということで。
767行目あたり。(ver2.7のとき)$text = sprintf(__('%1$s %2$d'), $wp_locale->get_month($arcresult->month), $arcresult->year);を
$text = sprintf(('%04d%02d'), $arcresult->year, $arcresult->month);に書き換えて表示を
200812
に変更。
ここに書いてあるようにすれば「20090830」のように表示されます。今回は「August, 2009」を目指しているので、書き換え内容を微妙に変えます。
WordPress 2.8 の場合、/wp-includes/general-template.php をテキストエディタなどで開くと820行目に次のコードがあります。上で引用したのと同じ行ですね。
$text = sprintf(__('%1$s %2$d'), $wp_locale->get_month($arcresult->month), $arcresult->year);
これを次のように書き換えます。
$text = sprintf(__('%1$s, %2$d'), $wp_locale->get_month($arcresult->month), $arcresult->year);
すごく簡単ですね。「%1$s %2$d」にカンマ“,”を加えて「%1$s, %2$d」にしただけです。これで日付が「August, 2009」のようになると思います。
これで WordPress の日付表示を英語表記にする作業は完了です。
※ 追記(October 26, 2009)
この作業は、WordPress をアップデートしたときに毎回やる必要があります。マイナーアップデートでも、ファイルが上書きされてしまうのか、表示が元に戻ってしまうことがあるのでご注意ください。
- 1 本当に気のせいw 本質的にはどっちがかっこいいとかあるわけがないです。
よろしければ以下の関連(してそうな)記事もどうぞ!
- WordPressで「続きを読む」の“#more-xxx”を除去する方法:WPアップグレード後にやること
- WordPress 3.0に無事アップデート完了
- WordPressで関連記事を自動挿入するプラグイン「Similar Posts」とその具体的な実装例
- WordPress旧バージョンユーザは脆弱性を突いた攻撃に要注意!
- モバイルSEOの売上の30%が報酬になるブログパーツ「まめパーツ」の挙動がおかしい件
![[画像] 今日の気になる記事「きにきじ」QR Code](http://www.kagitaku.com/diary/images/qrcode.png)
![[画像] きにきじ Feed](http://www.kagitaku.com/diary/images/Newspaper_Feed_128x128_ie6.png)
![[画像] kagitaku.com ロゴ](http://www.kagitaku.com/common/images/logo.png)





![[画像] 最上部へ](http://www.kagitaku.com/common/images/pageNavi-toTop.png)
![[画像] 最下部へ](http://www.kagitaku.com/common/images/pageNavi-toBottom.png)
![[画像] 履歴を戻る](http://www.kagitaku.com/common/images/pageNavi-back.png)
![[画像] 履歴を進む](http://www.kagitaku.com/common/images/pageNavi-forward.png)
![[画像] Contact](http://www.kagitaku.com/common/images/pageNavi-contact.png)
![[画像] Sitemap](http://www.kagitaku.com/common/images/pageNavi-sitemap.png)
WordPress での日付の表示を英語表記にする方法 powerweb
» このコメントを引用してコメントする
アーカイブの日付表記ですが、ver2.8なら
1)『wp-content/languages/ja.po』をPoeditで開いて、10902行目を『%1$s, %2$d』に書き換える
2)月の対訳(1月で検索すればOK)を全て日本語から英語に戻す
以上の編集を行い、新たに生成された『ja.mo』をアップロードすることでも対応できました。
ハードコードされている部分をいじる必要がないので、こっちの方が楽かも知れないです。 匠屋本舗
» このコメントを引用してコメントする
連続でのコメントご容赦ください。その他の日付についても、ja.poの『11062行目から11188行目の対訳を原文に戻す』ことで、『the_time(‘F’);』や『the_time(‘M’);』での表記がそれぞれ『September』と『Sep』に修正されます。曜日についても『11195行目から11272行目の対訳を原文に戻す』ことで修正が可能です。
どうやら2.7から2.8にバージョンアップするにあたり、翻訳周りで変更があったようですね。随分作業が楽になったように思えます。 匠屋本舗
» このコメントを引用してコメントする
匠屋本舗さん
コメントありがとうございます。
Poedit を使って MO ファイルをアップロードすることでも日付表記の英語/日本語を操作できるんですね。これは勉強になりました。
実は Poedit って使ったことがなくて、以前軽く調べたときにインストールや使い方が面倒臭そうだなという印象を持ちました。そしてその悪い印象を未だに拭えずにいます……。そのため、FTP クライアントからファイルを開いて弄るだけでいい今回の方法のほうにどうしてもお手軽感を抱いてしまいます。
慣れればお教えいただいた方法のほうが効率いいんだろうなぁとは思っています。なので、次のアップグレードのときなど、機会があれば挑戦してみようかなと思う今日この頃です。
あっ、Twitter、勝手にフォローさせていただきましたw Takku @きにきじ管理人
» このコメントを引用してコメントする
$text = sprintf(__('%1$s, %2$d'), $wp_locale->get_month($arcresult->month), $arcresult->year);
/wp-includes/general-template.phpの820行目を上記に変更 neff.com
» このコメントを引用してコメントする
$text = sprintf(__('%1$s %2$d'), $wp_locale->get_month($arcresult->month), $arcresult->year); m_s_y
» このコメントを引用してコメントする
[link] WordPressの日付表示を英語表記にする方法:WPアップグレード後にやること | きにきじ http://bit.ly/6Hew2F adtr0129
» このコメントを引用してコメントする
プラグインで対応 246
» このコメントを引用してコメントする
しばらく前に WordPress を2.8にアップグレードしました。WordPress grotesquelove
» このコメントを引用してコメントする
WordPressの日付表示を英語表記にする方法 73ra
» このコメントを引用してコメントする
general-template.phpの書き換えでアーカイブリストを英語表記に u1_113
» このコメントを引用してコメントする