如何检查或测试WordPress自动年份更改脚本?

时间:2020-03-11 作者:Marc Striebeck

如何测试动态生成或通过PHP生成的WordPress版权年,这意味着当年份发生变化时,不需要等待一整年来查看它是否发生变化?我对虚拟容器或诸如此类的东西一无所知,所以请在这里对我宽容一些。如果这是它所需要的,那么用一种简单的方式告诉我如何测试它。

我买了一个WordPress主题,但没有版权年自动更新。因此,我要求开发人员提供一个可以这样做的脚本,并将其放置在函数中。我的子主题文件夹中的php文件。因此,当2019年改为2020年时,这一年并没有发生逆转。

这是给我的原始代码。

    function child_theme_footer_text() {
    echo get_the_date( \'Y\' );
    }
    add_action( \'gridbox_footer_text\', \'child_theme_footer_text\' );
它不起作用。然后我将代码从原来的更改为:

    function child_theme_footer_text() {
    echo date( "Y" );
    }
    add_action( \'gridbox_footer_text\', \'child_theme_footer_text\' );
正如你所看到的,我改变了echo get_the_date( ‘Y’ );echo date( “Y”);

我还将单引号改为双引号Y. 这改变了日期,但也可以通过简单地删除然后放回原始代码来轻松地改变,我仍然无法知道它是否真的起作用。

我不认为改变echo get_the_date( ‘Y’ );echo date( “Y”); 实际上做了任何事,我只是觉得它做了。我想这只是重置它,就好像我是第一次插入代码一样。

此外,我的WP子主题文件夹中的实际文件名命名为gridbox child。我问开发人员是否应该将child\\u主题的名称或slug更改为我的child主题的实际名称,他说我应该这样做。我不完全清楚为什么我从来没有改变这一点,但我现在正计划这样做。问题是I still would never know 是否有效。

因此,除了子主题的名称之外,我猜正确的代码应该如下所示:

    function gridbox-child_footer_text() {
    echo get_the_date( \'Y\' );
    }
    add_action( \'gridbox_footer_text\', \'child_theme_footer_text\' );
网格框子名称中有一个破折号而不是下划线。所以我想这就是应该使用的。

两个主要问题是1。这能正常工作吗?如果不是,那么会是什么?和2。我怎么会知道呢?

1 个回复
SO网友:Jacob Peattie

撇开法律问题不谈,把重点放在显示当前年份的功能上,问题其实很简单:主题开发人员给了您错误的代码。

  • get_the_date( \'Y\' ) 获取当前帖子发布日期的年份。这不是你要的
  • date( \'Y\' ) 是一个本机PHP函数,用于获取服务器上的当前日期和时间。这可能就是他们想要给你的
  • wp_date( \'Y\' ) 是一个更新的函数(WordPress 5.3),它将获取当前日期和时间,并考虑WordPress中的时区设置。这是你最好使用的date() 或wp_date() 不应该工作。如果你需要保证,我建议用不同的格式测试每一个,这样你至少可以看到它们反映了当前的一天。如果您使用\'r\' 而不是\'Y\' 您将看到这样的日期:

    2020年3月12日星期四09:30:00+0200

    如果该日期连续两天不正确,那么您使用的函数将无法提供正确的年份。

    归根结底,这并不是你应该负责测试的事情。你只需要正确的信息,而你没有得到它。现在您已经获得了正确的信息,您可以依靠PHP和WordPress开发人员进行测试,以确保他们的函数给出了正确的日期。