在 WordPress 中如何使用 Date 和 Time
使用 Date 和 Time 是程序员一个非常日常的工作,比如定时发布,定时抓取信息等。PHP 提供很多 date/time 函数,但是 WordPress 有自己的一套,下面讲解下 WordPress 中使用 Date 和 Time 的经验和坑。
时区 - Timezone
使用 date/time 第一个的要注意的时时区,很多错误都是因为这个引起的,比如定时发布的文章在错误的时间发布了(比如你想是北京时间明天早上8点发布的,但是发布在格林尼治时间早上8点,即北京时间0点)。这种问题是非常难受的,并且非常难以去 debug,因为你得等着它再次运行才行。
WordPress 后台是可以让你设置时区的,在 设置 > 常规,并且可以使用下面代码获取:
$timezone_offet = get_option( 'gmt_offset' );
如果你的时间戳是 GMT,你可以使用下面代码转成本地时间:
$timezone_offet = get_option( 'gmt_offset' );
$time += $timezone_offet * 3600;
千万不要用 time()
time()
是用来获取当前时间的 UNIX 时间戳格式,但是 WordPress 有自己用来处理时间(可以同时处理 GMT 和本地时间)的函数:current_time()
。
current_time( $type, $gmt = 0 );
这个函数返回博客的当前本地时间,可以使 MySQL 时间数据格式(YYYY-MM-DD HH:MM:SS),也可以是 UNIX 时间戳格式,第三个参数是用来设置返回 GMT 时间还是博客本地时间。
所以如果你的代码用的是 time()
,改成:current_time( 'timestamp', 1 )
,将返回 GMT 时间,如果要获取本地时间,使用 current_time( 'timestamp' )
。
Date 和 time 格式
WordPress 让我们在 设置 > 常规 修改默认的时间格式,所以我们尽量在代码使用这个格式,而不要使用 date() 来生成,除非你自己要生成特殊的格式。
使用下面代码获取 WordPress 默认设置的时间格式:
$date_format = get_option( 'date_format' );
$time_format = get_option( 'time_format' );
下面例子以默认格式显示当前时间:
$date_format = get_option( 'date_format' );
$time_format = get_option( 'time_format' );
echo date( "{$date_format} {$time_format}", current_time( 'timestamp' ) );
一句话总结:我们在 PHP 中可以使用 Date 和 Time 做很多事情,但是一定要用 WordPress 方式使用它们。
相关文章
- wordpress删除“功能”中的 RSS链接
- 【说站】修改WordPress知更鸟导航菜单 分类字体颜色、大小
- WordPress网站首页广告位美化
- 如何修复运行缓慢的 WordPress 网站?
- php更换wordpress用户头像,将用户本地上传头像功能集成到WordPress主题中
- 同台服务器上多个 WordPress 站点怎么同时使用 Memcached
- 使用 WordPress 做纯后端和管理界面,实现前后端分离
- Memcached 和 Redis 有什么区别,WordPress 使用哪个做缓存好?
- WordPress 6.0 改进了 do_parse_request 过滤器,可以实现跳过没有必要的文章请求
- WordPress 文章查询教程10:如何使用权限和缓存参数
- 在 WordPress 中使用尤达条件表达式防止意外赋值
- WordPress 文章查询教程1:如何使用分类,标签或其他分类模式参数
- WordPress 文章查询教程5:如何使用分页相关的参数
- WordPress 教程:在 WordPress 中如何使用 Dashicons
- 使用内存缓存优化 WordPress 定时作业功能
- 使用 WordPress Transients API 缓存复杂的 SQL 查询和运算结果
- WordPress 技巧:限制分类数量
- WordPress 插件推荐:论坛签名图自动生成插件
- 在 Mac 上如何使用 SVN 上传插件到 WordPress
- WordPress 技巧:使用下拉菜单方式显示分类列表
- WordPress 技巧:使用自定义字段给日志单独加载 JS 脚本
- 搭建wordpress如何在Linux中安装WordPress网站(如何用linux)