我们能够根据需要使用ajax更新我们的post_meta。但是,它不会更改帖子的modified_time。
我们依靠get_modified_time向用户显示帖子的最新更新时间。(越新越好)
我已经搜索过了,但是还没有人使用这种技术。
有人有答案吗?
谢谢!
我用wpdb :: query()来做到这一点:
global $wpdb;
//eg. time one year ago..
$time = time() - DAY_IN_SECONDS * 365;
$mysql_time_format= "Y-m-d H:i:s";
$post_modified = gmdate( $mysql_time_format, $time );
$post_modified_gmt = gmdate( $mysql_time_format, ( $time + get_option( 'gmt_offset' ) * HOUR_IN_SECONDS ) );
$post_id = [the post id];
$wpdb->query("UPDATE $wpdb->posts SET post_modified = '{$post_modified}', post_modified_gmt = '{$post_modified_gmt}' WHERE ID = {$post_id}" );
Run Code Online (Sandbox Code Playgroud)
注意:如果要在帖子上显式设置修改日期,则无法使用wp_update_post(),因为它调用wp_insert_post(),它确定该帖子存在,并将post_modified和post_modified变量设置为当前日期。
在 PHP 中非常简单,80帖子编号在哪里:
// update post_modified and post_modified_gmt `datetime` on a post
$update = array( 'ID' => 80 );
wp_update_post( $update );
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3665 次 |
| 最近记录: |