如何获取和使用自上次评论以来的天数?

时间:2012-04-30 作者:TheLoneCuber

我如何达到这个条件。。。

    if lastest comment is < 7 days old 
        echo \'New Comment\';
    else \'\'

1 个回复
最合适的回答,由SO网友:fuxia 整理而成

要获取最新评论,请使用get_comments().
get_comment_date 返回任何格式的注释的日期,以供PHP使用date().

现在很容易了。让我们将逻辑放入一个函数中,以保持全局命名空间干净:

/**
 * Returns the number of days since the latest comment.
 *
 * @return int
 */
function get_days_since_last_comment( $post_id = 0 )
{
    $args = array (
            \'number\' => 1,
            \'status\' => \'approve\'
        );
    0 !== $post_id and $args[\'post_id\'] = (int) $post_id;
    // Array of comment objects.
    $latest_comment = get_comments( $args );

    // No comments found.
    if ( ! $latest_comment )
    {
        return -1;
    }

    $comment_unix = get_comment_date( \'U\', $latest_comment[0]->comment_ID );
    return round( ( time() - $comment_unix ) / 86400 );
}
将函数添加到插件或主题functions.php.

要显示特殊消息,请执行以下操作:

if ( get_days_since_last_comment() > 7 )
{
    print \'Looks like everything has been said.\';
}
获取特定帖子的天数(此处ID123) :

if ( get_days_since_last_comment( 123 ) > 7 )
{
    print \'Looks like everything has been said.\';
}

结束

相关推荐

WordPress主题中的“文本域”、Comments_Form帮助

我一直在努力创建自己的主题,基本上做到了这一点,但运行了主题检查插件,并提出了一些问题:在整个主题中,无论哪里有文本,我都会使用_e( \'Import / Export\' ); 例如帮助翻译。尽管如此,我还是收到了以下消息:推荐:管理/选项备份中的文本域问题。php。您尚未包含文本域</我试着做一些关于文本域的研究,但由于某种原因,我并没有把它们正确地组合在一起</我收到了关于add\\u custom\\u image\\u header和add\\u custom\\u backgro