Help:Timezone
From Eugene Neighbors
{{#ifeq:|ready||}}
{{#if:|Other languages:}} Template:H-langs:
{{#if: Help||}}|{{#if:|Other languages:}} Template:H-langs: {{#if: Help||}}}} The default Timezone (tz) for users who have not specified a custom offset may be configured manually.
[edit] Primary Method
- Create a backup copy of the LocalSettings.php file found in your install directory
- Edit LocalSettings.php and add the following code:
#Set Default Timezone
$wgLocaltimezone = "America/Los_Angeles";
$oldtz = getenv("TZ");
putenv("TZ=$wgLocaltimezone");
# Versions before 1.7.0 used $wgLocalTZoffset as hours.
# After 1.7.0 offset as minutes
$wgLocalTZoffset = date("Z") / 60;
putenv("TZ=$oldtz");
- Set the '$wgLocaltimezone' value to the proper value which you can find here. See examples below.
$wgLocaltimezone = "Europe/London"; $wgLocaltimezone = "Asia/Taipei";
Note: This timezone will be used in:
- ~~~~ signatures
- timestamps in recentchanges
- timestamps in history
Note: Upload and deletion logs will probably still be listed in UTC
Note: This method has been confirmed to work on MediaWiki: 1.5.6.
Note: The $wgLocalTZoffset configuration changed from hours to minutes in MediaWiki: 1.7.0.
[edit] Unconfirmed Methods
- If you just want to use the local time of your PC, you can just add this line in your LocalSettings.php:
$wgLocalTZoffset = date("Z") / 60;
This is what I'm using, it works exactly as you'd expect. --Iam8up 05:58, 19 June 2007 (UTC)
- To use your local time zone (say NZDT) put this in LocalSettings.php
$wgLocalTZoffset = 13 * 60;
- This example may also work great
$wgLocaltimezone="Europe/Berlin"; $wgLocalTZoffset = +2;
- In my case the primary method did not take daylight saving time into account. The next example works for me:
#Set Default Timezone
$wgLocaltimezone = "Europe/Amsterdam";
#Calculate the timezone offset with UTC
$oldtz = getenv("TZ");
putenv("TZ=$wgLocaltimezone");
$wgLocalTZoffset = date("Z") / 60 + date("I") * 60;
putenv("TZ=$oldtz");
- To make it work in 1.5.8 I had to specify the offset in hours, so change all occurences of '/ 60' to '/ 3600', e.g.
$wgLocaltimezone = "Europe/Amsterdam";
#Calculate the timezone offset with UTC
$oldtz = getenv("TZ");
putenv("TZ=$wgLocaltimezone");
$wgLocalTZoffset = date("Z") / 3600;
putenv("TZ=$oldtz");
I cannot test daylightsavings right now, so you probably have to combine it with the tip above to make that work.
Note: The methods in this section are unconfirmed and may not work properly.
[edit] Manual Timezone Specification
The primary method needs the server to support the 'tz' database; some non-GNU hosts don't do that. You can supply timezone data manually; see here for details. E.g. use
$wgLocaltimezone = "CET-1CEST-2,M3.5.0/2,M10.5.0/2";
- instead of
$wgLocaltimezone = "Europe/Budapest";
- or
$wgLocaltimezone = "AEST-9,M10.5.0/3,M4.1.0/3";
- instead of
$wgLocaltimezone = "Australia/Sydney";
