打印当前日期 - Wordpress

3

如果我使用

<?php echo get_the_date(); ?>

这段代码在主页上打印出"2017年11月4日",是因为项目语言设定为葡萄牙语。

但是如果我把这段代码放到任何一个页面文章页归档页,它会显示创建日期。

如何在任何页面以"04 de novembro de 2017"格式打印当前日期?


请查看 PHP 手册和 date() 函数。 - pavel
@panther,我已经查阅了手册,但是所有尝试输入“de”的方法都没有起作用。 - Gislef
哪些尝试?在您的问题中没有尝试,WP函数get_the_date()返回文章的创建日期,而不是当前日期。 - pavel
日期函数中的“普通”文本必须进行转义,使用\d\e。例如:date('d \d\e F'); - pavel
让我来修复它,我尝试按照PHP手册使用date()函数。 - Gislef
3个回答

4
不要误解!如果您使用WP中的函数get_the_date(),它会显示文章/页面/归档创建时的日期,就像这里所解释的一样。https://codex.wordpress.org/Function_Reference/get_the_date 如果您想显示当前日期,请参考以下示例。
您可以使用date()方法来显示当前日期。
更多信息请参见:http://php.net/manual/en/function.date.php 如果您想在不同页面上显示当前日期,则可以使用以下代码:
<?php 
$today = date("F j, Y, g:i a");                 // March 10, 2001, 5:16 pm
$today = date("m.d.y");                         // 03.10.01
$today = date("j, n, Y");                       // 10, 3, 2001
$today = date("Ymd");                           // 20010310
$today = date('h-i-s, j-m-y, it is w Day');     // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.');   // it is the 10th day.
$today = date("D M j G:i:s T Y");               // Sat Mar 10 17:16:18 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h');     // 17:03:18 m is month
$today = date("H:i:s");                         // 17:16:18
$today = date("Y-m-d H:i:s");                   // 2001-03-10 17:16:18 (the MySQL DATETIME format)

?>

从上面的示例中,选择您需要的格式,必要时进行调整,然后只需回显$today,这将起作用。

----------> 编辑 <-------------

要实现所需的格式,请使用以下内容:

<?php 
echo date('l jS \of F Y');
?>

请用你的语言替换\of

如果你将代码片段放置在你的页面中,它应该能够工作。

在这里测试:http://sandbox.onlinephpfunctions.com/


谢谢,我已经查阅了手册,但是尝试添加 de 的所有尝试都没有成功。 - Gislef
谢谢,我现在明白了,但只有一个细节,这是用英语打印的,我如何使日期的语言保持为葡萄牙语? - Gislef
当前结果为:2017年11月4日 - Gislef
在输出结果之前,您应该设置本地环境。 setlocale(LC_TIME, "pt_BR"); - yofisim
这里有一些相关链接的示例: https://pt.stackoverflow.com/questions/8317/como-fazer-a-fun%C3%A7%C3%A3o-date-formatar-uma-data-em-portugu%C3%AAs如果问题已经得到了适当的回答,可以随意解决它。 ;0 - yofisim
有些情况下会出现问题。这将根据PHP输出日期,而不是WP设置的时区。 - undefined

0

对我来说这很好用:

echo date(get_option('date_format')); 

0
如果您使用PHP的date()函数,会出现一些问题。这将根据PHP输出日期,而PHP是服务器的时间,即UTC时间,而不是本地时间WP设置的时间。除非您的时区确实是UTC+0,否则您将显示错误的日期/时间约一天。
相反,使用wp_date函数可以更准确地输出日期。更多信息:

https://developer.wordpress.org/reference/functions/wp_date/

它使用与PHP date() 函数相同的参数,您可以使用这些参数传递:

echo wp_date('l jS \of F Y');

使用此功能可以在WordPress中显示与您设置的时区相同的输出,并防止显示服务器的UTC时间。假设本地时区是您想要的时区。

不要忘记将区域设置更改为您的语言以翻译输出。

setlocale(LC_TIME, 'pt_BR', 'pt_BR.utf-8', 'pt_BR.utf-8', 'portuguese');


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接