如何一天只更改一次发布日期?

时间:2013-06-09 作者:Nguyen

我有这个密码

is_admin() or add_action( \'the_post\', function( $post ) {

if ( ! is_singular() or ! is_main_query() )
    return;

$post->post_date     = current_time( \'mysql\' );
$post->post_date_gmt = \'\';

wp_update_post( $post );
});

刷新页面时,它将更新到当前时间。但这会减慢我的网站速度。那么如何将页面的日期时间更新为当前时间only 1 time per day ?

示例:我在2013年6月6日下午5点写了一篇帖子。现在,当我刷新页面时,它将从6月6日下午5点更改为6月9日下午7点。在6月9日,如果我刷新页面,它不会改变任何东西。

对不起,我的英语很差!非常感谢!

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

比较post_date 使用当前时间,然后测试差值是否大于一天:

is_admin() or add_action( \'the_post\', function( $post ) {

    if ( ! is_singular() or ! is_main_query() )
        return;

    // now minus last mod time in seconds
    $diff = time() - mysql2date( \'U\', $post->post_date );

    if ( DAY_IN_SECONDS >= $diff )
        return;

    $post->post_date     = current_time( \'mysql\' );
    $post->post_date_gmt = \'\';

    wp_update_post( $post );
});

结束

相关推荐