Manual:Timezone/ja

From MediaWiki.org

Jump to: navigation, search


カスタムのオフセットを指定しなかったユーザーに対してデフォルトのタイムゾーン (tz)は手動で設定できます。


Contents

[edit] 最初の方法

  • インストールしたディレクトリにあるLocalSettings.phpファイルのバックアップコピーを作ります
  • LocalSettings.phpを編集して次のコードを追加します:
# デフォルトのタイムゾーンを設定する
$wgLocaltimezone = "America/Los_Angeles";
$oldtz = getenv("TZ");
putenv("TZ=$wgLocaltimezone");
 
# 1.7.0以前のバージョンでは、$wgLocalTZoffsetは時間単位で使われます。
# 1.7.0以降はオフセットは分単位です
$wgLocalTZoffset = date("Z") / 60;
putenv("TZ=$oldtz");
  • '$wgLocaltimezone'をここで見つかる適切な値に設定します。下記の例をご覧下さい。
$wgLocaltimezone = "Europe/London";
$wgLocaltimezone = "Asia/Taipei";

注: このタイムゾーンは次のように使われます:

  • ~~~~ 署名
  • 最近の更新におけるタイムスタンプ
  • 履歴におけるタイムスタンプ

注: アップロードと削除ログはおそらくUTCのままで表示されますUTC
注: この方法はMediaWiki1.5.6で動作することが確認されました。
注: MediaWiki 1.7.0で$wgLocalTZoffset設定変数は時間単位から分単位に変更されました

[edit] 未確認の方法

  • PCのローカルタイムを使いたい場合、次の一行をLocalSettings.phpに追加します:
$wgLocalTZoffset = date("Z") / 60;

  • ローカルのタイムゾーンを使うためには(例えばNZDT)、次の一行をLocalSettings.phpに設置します:
$wgLocalTZoffset = 13 * 60;

  • 次の例でも十分に動作します
$wgLocaltimezone="Europe/Berlin";
$wgLocalTZoffset = +2;
  • 筆者の場合、最初の方法はサマータイムが考慮されませんでした。次の例で動作しました:
# デフォルトのタイムゾーンを設定します
$wgLocaltimezone = "Europe/Amsterdam";
 
# UTCでタイムゾーンのオフセットを計算します
$oldtz = getenv("TZ");
putenv("TZ=$wgLocaltimezone");
$wgLocalTZoffset = date("Z") / 60 + date("I") * 60;
putenv("TZ=$oldtz");

  • 1.5.8で動作させるために 時間単位でオフセットを指定しなければなりませんでしたので、例えば'/ 60'を'/ 3600'に変更します。
$wgLocaltimezone = "Europe/Amsterdam";
# UTCでタイムゾーンのオフセットを計算する
$oldtz = getenv("TZ");
putenv("TZ=$wgLocaltimezone");
$wgLocalTZoffset = date("Z") / 3600;
putenv("TZ=$oldtz");

すぐにサマーライトをテストできませんので、動作するように上記のティップとそれを結びつけました。

注: このセクションの方法は検証されていないので適切に動作しないかもしれません。

[edit] 手動によるタイムゾーンの指定

最初の方法は'tz'データベースをサポートするサーバーが必要です; GNUではないホストの中にはそうではないものがあります。手動タイムゾーンの日付を提供することが出来ます; 詳細に関してはここをご覧下さい。例えば

$wgLocaltimezone = "CET-1CEST-2,M3.5.0/2,M10.5.0/2";
代わりに
$wgLocaltimezone = "Europe/Budapest";
もしくは
$wgLocaltimezone = "AEST-9,M10.5.0/3,M4.1.0/3";
代わりに
$wgLocaltimezone = "Australia/Sydney";

[edit] 匿名訪問者のオプションを指定する

(共有ホスティングのように)セーフモードのPHPにおいて、多くの場合putenv関数が無効なので、上記のタイムゾーンの設定方法も無効になります。この場合、代わりの方法として、$wgDefaultUserOptions変数で匿名訪問者のオプションを指定する方法があります。例えば、あなたがアジアの東京(Asia/Tokyo)に住んでいて9時間の補正(UTC+9)を行いたい場合、次のコードをLocalSettings.phpに追加します。

$wgDefaultUserOptions['timecorrection'] = '09:00';

この設定の後で、設定する前に作成した記事のキャッシュをパージして下さい。

[edit] 日時を記事に表示するには?

マジックワードを使う。Help:Variables/jaの日付と時間のセクションを参照。

[edit] 最終更新日の表示方法を修正するには?

MediaWiki名前空間の記事を編集する。Manual:FAQ/ja#フッターを変更するには?を参照。

Personal tools