我想在邮寄中打印一条消息,“从发布日期起一个月后”

时间:2011-02-17 作者:AboSami

我需要在帖子中显示消息,但从发布日期起一个月后。

我试着在问你之前做到,但我做不到

这是我的密码

                $publish_date =  $post->post_date_gmt;
        $today = date(\'d-m-Y h:i:s\');
        $nextMonth = mktime(0 , $publish_date(\'m\')+1 , 0 , 0 , 0,0);
        echo \'Publish Date:\'.$publish_date.\'<br/>\';
        echo \'Today Date:\'.$today.\'<br/>\';
        echo \'Next Month:\'.$nextMonth;
        if($today => $nextMonth){
            echo \'One Month or more for publish post\';
        } else {
            echo \'\';
        }

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

我为我的主题编写的自定义条件(主要是为了从更新的帖子中踢出一些小部件和广告),效果很好:

function is_old_post( $days = 14 ) {

    if( !is_single() )
       return false;

    $id = get_the_ID();
    $date = get_post_field( \'post_date\', $id );

    if( strtotime( $date ) < strtotime( "-{$days} days" ) )
        return true;

   return false;
}

SO网友:wyrfel

两件事:

您今天的日期应采用“Y-m-d h:i:s”格式

  • $发布日期(\'m\')?,mktime会创建一个unix时间戳afaik,而不是mysql时间戳,这正是您所追求的,所以请尝试以下操作:

    $ts = strtotime($today);
    $m = date(\'m\', $ts);
    $Y = date(\'Y\', $ts);
    if ($m < 12) { $m++; } else { $m = 1; $Y++; }
    $nextMonth = date(\'Y-m-d\', mktime( 0, 0, 0, $m, date(\'d\', $ts), $Y ));
    
  • 结束

    相关推荐

    在页面中显示博客条目(使用GET_POSTS检索帖子)?

    我做了一个页面叫blog.php 它将存储我的博客条目,所有其他页面都有一个自定义的帖子类型,名为“Page Content“(对于静态内容)。我想在这个博客页面中创建一个标题,该标题是从当前页面的主循环中检索的(the_content), 并使用了get_posts 检索博客条目。我试着做相反的事情:使用get_posts 获取the_content 但已检索到the_content 的博客条目。(并使用主循环检索帖子)。使用这种方法会有问题吗?有更好的方法吗?预期结果:<?php /**