• ブログを投稿すると日付がなぜかこうなります。
    7 月 21st, 2009

    月は良いのですが、日にちと年が英語になってしまいます。
    ブログはこちらですが、全てこの日英まざったフォーマットのままです。
    http://www.ikedasensei.com

    全て日本語に統一したいのですが、どうしたらいいでしょう。
    以下が使ったテーマです。

    The Beach House 1.5 : Pure 1 Media 作
    http://beach-house.idano.net/

    解決法をご存知の方は是非教えてください。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • お使いのテーマでは日付の書式が “7 月 21st, 2009” のような書式に固定されています。

    日付の書式は、 PHP の date() 関数と同じく Y/m/d -> 2009/07/21 など、特定のアルファベット一文字で各書式を表す仕様になっています。このうちの S という書式が、日数を 1st, 2nd, 3rd… のように表す書式なのですが、 WordPress 日本語版にはこの対訳がありません。もうちょっと正確に言えば、その書式が /wp-includes/locale.php で各言語に置き換えているロケールのクラスに対象として含まれていないため (要するに仕様上、その部分を翻訳できるように設計されていないので) 21日、のようには日本語化されません。 (一方、曜日や月名などは翻訳対象となっているので date() 関数と異なり、日本語化されます。 )

    そこで、お使いのテーマの以下の箇所を S を使用しない書式に修正する必要があります。

    1. index.php – 10 行目:
      archive.php – 12 行目:

      <?php the_time('F jS, Y') ?>
    2. archive.php – 40 行目:
      single.php – 30 行目:
      search.php – 19 行目:
      attachment.php – 29行目:
      image.php – 26 行目:

      <?php the_time('l, F jS, Y') ?>

    修正後の書式はお好みですが、

    <?php the_time( get_option('date_format') ); ?>

    としておくと、管理ページで設定できる日付の書式が適用されますので、一元的に管理でき、表示のされ方を簡単に色々試せていいかもしれません。なお、

    <?php the_time() ?>

    とだけなっているテンプレートタグは、管理ページで設定できる時刻の書式を出力しますので、そのままにしておいてください。

    date() 関数の書式については以下のページを参考にしてください。

    トピック投稿者 ikedasensei

    (@ikedasensei)

    mizube様、ご丁寧な説明ありがとうございました。

    早速例の箇所を全て以下に変えて見ました。
    <?php the_time( get_option(‘date_format’) ); ?>

    しかし使っている日付の設定をできる管理ページが悪いのでしょうか。
    どの日付フォーマットを選んでも、表示が変わりません。

    今度は例の箇所を全て以下に変えて見ました。英語表示でも統一していればいいので。
    <?php the_time(‘m.d.y’) ?>

    しかし結果は同じでした。
    7 月 21st, 2009

    又新しくブログを投稿してみてもフォーマットはそのままでした。

    何が原因なのか未だに不思議です。
    どうしてもの場合は日付変換がもっとスムーズに出来るテーマに変える事も出来るのですが。。。

    反映されませんでしたか。それは、確かに不思議ですね。配布元のテーマをダウンロードして確認した限りでは、他に修正すべき箇所は見あたりませんでしたし、私の環境では、修正したテーマを適用すると、日付のフォーマットの変更は確かに適用されています。

    何か根本的な見落としがあるように思います。関係があるかどうかも定かではないので恐縮ですが、テーマファイルをどのように修正されたか、手順を書き出して頂けませんか?

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「日付の表示を日本語に統一させたいのですが」には新たに返信することはできません。