增加最后编辑时间
经常的,我们会在发布文章之后去修改它,但是 Typecho
默认显示发布时间,而且我也不愿意在每次修改之后修改自己的发布时间,这样反而不好,所以就需要增加一个最后编辑时间。
搜索了一下,发现 Typecho
自带有每篇文章的最后编辑时间的,可以通过 $this->modified
获得这篇文章的最后编辑时间。
通过在 post.php
末尾的标签后面添加
<p class="post-meta">
最后编辑时间:
<?php echo date('Y-m-d h:i a', $this->modified;?>
</p>
便可以显示该文章的最后编辑时间。
但是,我发现显示出来的时间,时区不对,正好和我现在的本地时间相差了8小时,然而文章的发布时间显示是正确。
最后我找到了问题所在,原来这是 Typecho
的 时区问题,它在计算时区偏移的时候用的后台设置的时区偏移 - 服务器的时区偏移
,我的后台设置是 UTC+8
,而服务器也是 UTC+8
,这样就导致了我的最后的时区偏移为零,所以显示出来的时间和本地时间相差了8小时。
用那篇文章里的方法修改了一下我的代码:
<p class="post-meta">
最后编辑时间:
<?php echo date('Y-m-d h:i a', $this->modified + ($this->options->timezone - idate("Z")));?>
</p>
现在就能够正常的显示最后编辑时间了。可喜可贺可喜可贺。