サポート » 使い方全般 » 時刻設定

  • 解決済 mimisuke

    (@mimisuke)


    初歩的な質問ですいません

    記事の投稿時にリビジョン管理として
    投稿したリビジョンの時間が表示されますが
    私のブログの管理画面では
    日本時間で無くUTCで表示されるみたいです。
    一般設定では日本時間(+9)としていて
    書式等の部分の例では
    日本時間が表示されています。

    他にたぶん、設定する箇所があるんだと思うのですが
    良くわかりません。

    どなたかお教えください

11件の返信を表示中 - 1 - 11件目 (全11件中)
  • 管理画面を開いて、設定>一般の中の、タイムゾーンで設定できますよ。
    サーバがUTCなら、日本時間は”UTC+9″で、
    サーバも日本時間なら、”UTC”を選らべば、日本時間になるはずです。
    海外にしたいなら、都市名でも選べますよ。

    トピック投稿者 mimisuke

    (@mimisuke)

    aimaimさん、ご返答ありがとうございます。

    私の説明の仕方が悪かったのですが
    設定>一般のタイムゾーンは ”UTC+9″にしているのですが
    リビジョン管理等の時間は、あきらかに日本時間と9時間ずれているんです

    なんとなくデータベースの情報を見るとき、ずれているような気がするんですが
    (countrizeiiのプラグインの当日のヒット数といった情報を見ても
    ずれていたりしまして)

    私の場合、Wordpress 3.0日本語版にバージョンアップしたら、
    投稿時刻やプラグインのGoogle Sitemap Generatorの更新時刻が
    日本時間にならなかったので、

    WordPressのトップフォルダーにある「wp-setting.php」ファイルの
    32行目あたりに、

    date_default_timezone_set( ‘UTC’ );

    という記載があると思いますが、これを

    date_default_timezone_set( ‘UTC+9’ );

    と変更すると、日本時間になりましたよ。
    ご参考までに。

    トピック投稿者 mimisuke

    (@mimisuke)

    reikispaceさん ご連絡ありがとうございました。

    現在wordpressは2.9.2でして、トップフォルダの
    wp-settings.phpには上記記述は無いようでした。

    現在、3.0にはあげられないてないので
    3.0にしてから上記を試してみます

    ありがとうございました

    トピック投稿者 mimisuke

    (@mimisuke)

    失礼しました。

    上記の件、2.9.2でもしっかりありました
    (なに検索みすってたんだろ)

    UTCになっているので+9をつけてみてみます。

    結果はまた報告いたします
    ありがとうございました

    トピック投稿者 mimisuke

    (@mimisuke)

    たびたびすいません。

    解決いたしました。

    結論から言うと

    WordPressのトップフォルダーにある「wp-settings.php」ファイルの
    29行目あたりに、

    date_default_timezone_set( ‘UTC’ );

    を UTC+9 とすることで

    管理画面中のリビジョンの時間や
    プラグイン(counterize ii)などで参照している時間などが
    日本時間で表示されるようになりました。

    reikispaceさん、そして関係者の皆様
    ありがとうございます(感謝)

    ちょっとまったっっ!

    それって、解決方法として、間違ってませんか??
    どっちかというと、wordpressのコアで、リビジョンの時刻表示を
    設定しているタイムゾーンを反映させて表示しなければならない
    バグというか、不具合なんじゃないでしょうか。

    wp-settings.phpは、基本ユーザがいじるファイルじゃないはず。
    「 You should not have to change this file and allows
    for some configuration in wp-config.php.」って書いてありますよね。

    そもそも、wordpressのバージョンが上がるたびに、上書きされるので
    アップグレードのたびに、書き換えなきゃいけなくなりますよー。

    #mimisukeさん、最初の回答、ちゃんと読んでなくて、失礼しました。m(__)m
    解決済みにされちゃったから、もう読まれないかな。

    いまさらながらはまりました。
    WordPress側でdate()やtime()をUTCに固定してしまうと言うのはどうなのでしょう・・・
    本家では2.9の時点でチケットがでているようですが現在でもUTC固定のようで。
    何か意図があるのかどうかは分かりませんが、古いプラグインやテーマなどにも影響しますし、バグとも言えそうな気がします。その辺どうなのでしょう・・・

    モデレーター Takayuki Miyoshi

    (@takayukister)

    shokun0803 さん、

    current_time() を使うと WordPress のタイムゾーン設定を反映したローカル時刻を取得できます。

    $local_timestamp = current_time( 'timestamp' ); // ローカルのタイムスタンプ
    $local_date = gmdate( 'Y-m-d', $local_timestamp ); // ローカルの時刻文字列

    PHP のタイムゾーン設定と WordPress のタイムゾーン設定が別々にあるので、重複や混乱を避けるためにPHP のタイムゾーンの方は UTC に統一しておきたい、というのがdate_default_timezone_set( 'UTC' ) を指定する意図ではないかと思います。

    Miyoshiさん、ありがとうございます。
    2.9にあがっていたチケット(英語が分からないの、汗)は修正されたのではなくそれが「仕様」として処理されたのですかね。
    phpの仕様としてtime()はローカルタイムを取得するとなっているので「WordPress上では違うよ」というのは見落としがちです。実際にサーバーがUTCになっていると思い込んでいました。

    解決済みスレッドで勝手に話進めちゃうのはいけないっすね、別に質問したつもりじゃなかったんすけど・・・プラグインとか不具合でてないのかな?

    トピック投稿者 mimisuke

    (@mimisuke)

    すいません。2か月前に問い合わせして
    解決していたこのTopicに、その後皆さまが
    心配してくださっていたのを知りました。

    バージョンUPすると、上書きされるとのこと
    理解しました。

    ありがとうございます

11件の返信を表示中 - 1 - 11件目 (全11件中)
  • トピック「時刻設定」には新たに返信することはできません。