$current\\u date是一个时间戳,$compare\\u date是一个格式化的日期,因此您正在比较不同的内容。
因为您已经在使用DateTime 从PHP 5.2.2开始,可以使用比较运算符比较DateTime对象,您可以将$expired\\u date(DateTime对象)与今天的日期作为DateTime对象进行比较:
$current_date = new DateTime();
$expired = new DateTime();
$expired->setTimestamp( get_the_time(\'U\') ); // get UNIX timestamp of current post
$expired->add(new DateInterval(\'P2D\')); // add 2 days
$day_color = \'\';
if( $current_date > $expired ) {
$day_color = \'#BA0000\';
} else {
$day_color = \'#39AC00\';
}
echo sprintf( \'<span style="float: right; color: %s;">Due Date: %s</span>\', $day_color, $expired->format(\'F j, Y g:i A\') );