WordPress 博客最近更新日期时间可以显示在博客状态统计信息页面,也可以用作缓存过期时间戳,如何获取 WordPress 博客最近更新 (发布/修改文章页面) 日期时间?可以通过查询数据库获取,还可以使用 WordPress 自带函数实现。
通过 $wpdb 查询获取 WordPress 博客最近更新日期
先上数据库方法,通过 $wpdb 查询获取 WordPress 博客最近更新 (发布/修改文章) 日期时间。
「如何获取 WordPress 博客最近更新「发布/修改文章或页面」日期时间?:https://uxtt.com/35」$last = $wpdb->get_results("SELECT MAX(post_modified) AS MAX_m FROM $wpdb->posts WHERE (post_type = 'post' OR post_type = 'page') AND (post_status = 'publish' OR post_status = 'private')");
$last = date('Y 年 n 月 j 日', strtotime($last[0]->MAX_m));
echo '最后更新:'.$last;
WordPress 内置函数查询博客最近更新日期
这个 WordPress 博客最近更新时间戳可以用作 wp_cache key,这样修改文章/页面,相关缓存就会快速失效,然后自动更新……上面那个代码稍稍折腾也能用,不过按理,WordPress 可能自带相关函数?
换了关键词,果然找到了 get_lastpostdate,然后 get_lastpostmodified……
- get_lastpostdate:获取 WordPress 网站最新发布文章的时间。
- get_lastpostmodified:获取 WordPress 网站最新发布/修改文章的时间。
比如下面测试代码:
「如何获取 WordPress 博客最近更新「发布/修改文章或页面」日期时间?:https://uxtt.com/35」echo 'get_lastpostdate:'.get_lastpostdate();
echo 'get_lastpostmodified:'.get_lastpostmodified();
会输出如下结果:
get_lastpostdate:2021-01-30 04:05:44.000000
get_lastpostmodified:2021-02-07 08:50:45.000000
加上 blog 参数,就会修正时区,输出当地时间:
「如何获取 WordPress 博客最近更新「发布/修改文章或页面」日期时间?:https://uxtt.com/35」echo date( 'Y 年 n 月 j 日 H:i:s', strtotime( get_lastpostmodified('blog') ) );
输出:2021 年 2 月 7 日 12:56:10
怎么结合 wp_cache 使用?在缓存使用的地方,参考下面代码加上 get_lastpostmodified 即可:
$custom_query = wp_cache_get( 'custom_query', 'custom_query' );「如何获取 WordPress 博客最近更新「发布/修改文章或页面」日期时间?:https://uxtt.com/35」
wp_cache_set( 'custom_query:'.md5(maybe_serialize(get_lastpostmodified())), $custom_query, 'custom_query', 3600);
//ADs:uxtt.com | ostarted.com | 0xo.net | ae.mba | sars.win | bdkp.net
//改成:
$custom_query = wp_cache_get( 'custom_query:'.md5(maybe_serialize(get_lastpostmodified())), 'custom_query' );
wp_cache_set( 'custom_query:'.md5(maybe_serialize(get_lastpostmodified())), $custom_query, 'custom_query', 3600);
任何服务、机场均有跑路风险,请注意防范!没有啥绝对好坏,一线机场也会炸,小机场也可能岁月静好! 备用节点参考:大哥云官网、万城专线官网、飞机云官网、搬瓦工JMS、极客云官网……
本文已于 2022-06-19 修改更新,您的宝贵建议请在文章下方评论区留言反馈,谢谢。
Comments:0