WordPress the_time()设置时间格式,the_time() 参数对应的含义。中文主题上使用一些英文格式,比如月份的英文显示。

WordPress的时间显示格式是多样化的,你想要什么格式都能自由的定义,非常的方便。

在修改与制作 WordPress主题的过程中,我们难免会用到时间函数,这当然就涉及到了 WordPress 的时间格式。

那么我们只要对时间函数: the_time() 做一些对应的修改,就能达到我们想的效果,首先我得要知道那些参数对应的含义,这样用起来才会得心应手。

表格中的信息主要来源于Wordpress的 Customize date and time format ,我又做了一些补充。

a = 一般在12小时制显示时使用,显示当前是 am(上午)或 pm(下午)A = 功能同上,区别是 AM 或 PM 为大写

d = 一月中的哪一天,固定以两位数显示,如06

F = 文字全称表示的月份

g = 12小时制的小时数,位数根据实际的时间决定G = 24小时制的小时数,位数根据实际的时间决定

h = 12小时制的小时数,固定以两位数显示H = 24小时制的小时数,固定以两位数显示

注:如当前时间是早上8点,用 h 参数输出的结果为 08,用 g 参数输出的结果为 8,换成大写后仅改变时制。

i =输出一个零,不知何用,望知道的兄弟指教。(大写 i)

j = 一月中的哪一天,位数根据实际的日期决定,如6

l = 文字表示的星期(小写 L)L = 输出一个零,不知何用,望知道的兄弟指教。

m =英文缩写的月份

s =一般跟随参数 j 使用,效果是在天数后加上序数词后坠(st, nd ,rd 等)

Y =2位数的年份

注:参数区分大小写,写在参数引号内的非参数字符不做处理,直接输出。

例如,以下格式字串:

l, F j, Y

将生成如下格式的日期:

星期五, 十一月 6, 2012

下面再举几个WordPress设置时间格式的例子:

•中文日期格式设置,年月日:如:2010年2月1日,则Wordpress the time函数的参数这样写:

?php the_time('Y年n月j日'); ?

•中文时间的设置,小时分秒:如:22:22:22,则Wordpress the time函数的参数这样写:

?php the_time('G:i:s'); ?

•星期格式设置,星期:如:2010年11月1日星期四,则Wordpress the time函数的参数这样写:

?php the_time('Y年n月j日l'); ?

当然,有时候我们主题喜欢中英文混输的日期显示格式,对于使用中文版 WordPress来说,这个就要做一些小小的调整了。这里以显示日志时间的月份为例,我们在主题中使用 the_time( 'M' ) 应该可以打印出一个 Sep 的英文简写的月份值。但是幸运而又不幸地是,WordPress 会非常人性化地为你翻译成“九”,说幸运,是因为 WordPress 的智能化让人感到高兴,说不幸是因为我确确实实就需要 Sep 这样的英文简写的时间格式,这让我如何是好。

那么这个时候我们如何办呢,从函数角度出发解决此问题,重置一下,避免汉化。

将函数:

?php the_time('M');?

替换成:

?php echo date('M',get_the_time('U'));?

这个时候我们就发现得到了我们需要的时间格式了。

?php the_time('Y-m-j'); ? 输出:2007-02-6 ?php the_time('y-n-j'); ? 输出:07-2-6

大写Y表示年四位数字,而小写y表示年的两位数字;

小写m表示月份的数字(带前导),而小写n则表示不带前导的月份数字。

?php the_time('Y-M-j'); ? 输出:2007-Feb-6 ?php the_time('Y-m-d'); ? 输出:2007-02-06

大写M表示月份的3个缩写字符,而小写m则表示月份的数字(带前导0);

没有大写的J,只有小写j表示月份的日期,无前导0;若需要月份带前导则使用小写d。

?php the_time('Y-F-jS'); ? 输出:2007-February-6th

大写M表示月份的3个缩写字符,而大写F表示月份的英文全写。(没有小写f)

大写S表示日期的后缀,比如“st”、“nd”、“rd”和“th”,具体看日期数字为何。

小结:

表示年可以用大写的Y和小写y;

表示月可以用大写F、大写M、小写m和小写n(分别表示字符和数字的两种方式);

表示日可以用小写d和小写j,大写S表示日期的后缀。

下面主要说一下时间的参数的含义(时:分:秒):

默认情况下,PHP解释显示的时间为“格林威治标准时间”,与我们本地的时间相差8个小时。

?php the_time('g:i:s a'); ? 输出:5:56:57 am ?php the_time('h:i:s A'); ? 输出:05:56:57 AM

小写g表示12小时制,无前导0,而小写h则表示有前导0的12小时制。

当使用12小时制时需要表明上下午,小写a表示小写的“am”和“pm”,大写A表示大写的“AM”和“PM”。

?php the_time('G:i:s'); ? 输出:8:02:26 ?php the_time('H:i:s'); ? 输出:08:02:26