Formatting Date and Time

跳转至: 导航搜索

Customizing the Time and Date

Certain WordPress tag functions are used to display or return date and time information; the_date() and the_time() are examples of this. Some of these functions accept a parameter called a format string that allows you to determine how the date is going to be displayed. The format string is a template in which various parts of the date are combined (using "format characters") to generate a date in the format specified.

For example, the format string:

l, F j, Y

creates a date that look like this:

Friday, September 24, 2004

Here is what each format character in the string above represents:

  • l = Full name for day of the week (lower-case L).
  • F = Full name for the month.
  • j = The day of the month.
  • Y = The year in 4 digits. (lower-case y gives the year's last 2 digits)
(Commas are read literally.)

WordPress is written in the programming language PHP. The date formatting functions in WordPress use PHP's built-in date formatting functions. You can use the table of date format characters on the PHP website as a reference for building date format strings for use in WordPress. Here is a table of some of the more useful items found there:

Day of Month
d Numeric, with leading zeros 01–31
j Numeric, without leading zeros 1–31
S The English suffix for the day of the month st, nd or th in the 1st, 2nd or 15th.
l Full name  (lowercase 'L') Sunday – Saturday
D Three letter name Mon – Sun
m Numeric, with leading zeros 01–12
n Numeric, without leading zeros 1–12
F Textual full January – December
M Textual three letters Jan - Dec
Y Numeric, 4 digits Eg., 1999, 2003
y Numeric, 2 digits Eg., 99, 03
a Lowercase am, pm
A Uppercase AM, PM
g Hour, 12-hour, without leading zeros 1–12
h Hour, 12-hour, with leading zeros 01–12
G Hour, 24-hour, without leading zeros 0-23
H Hour, 24-hour, with leading zeros 00-23
i Minutes, with leading zeros 00-59
s Seconds, with leading zeros 00-59
T Timezone abbreviation Eg., EST, MDT ...
Full Date/Time
c ISO 8601 2004-02-12T15:19:21+00:00
r RFC 2822 Thu, 21 Dec 2000 16:01:07 +0200


Here are some examples of date format and result output.

  • F j, Y g:i a - November 6, 2010 12:50 am
  • F j, Y - November 6, 2010
  • F, Y - November, 2010
  • g:i a - 12:50 am
  • g:i:s a - 12:50:48 am
  • l, F jS, Y - Saturday, November 6th, 2010
  • M j, Y @ G:i - Nov 6, 2010 @ 0:50
  • Y/m/d \a\t g:i A - 2010/11/06 at 12:50 AM
  • Y/m/d \a\t g:ia - 2010/11/06 at 12:50am
  • Y/m/d g:i:s A - 2010/11/06 12:50:48 AM
  • Y/m/d - 2010/11/06

Combined with the_time() template tag, the code below in the template file:

This entry was posted on <?php the_time('l, F jS, Y') ?> and is filed under <?php the_category(', ') ?>.

will be shown on your site as following:

This entry was posted on Friday, September 24th, 2004 and is filed under WordPress and WordPress Tips.


To localize dates, use the date_i18n() function.

You can probably safely localize these date format strings with the __(), _e(), etc. functions (demonstrated with get_the_date(__(…))):


You can escape custom characters using the \letter format. For example you would escape the text at with \a\t.