分类: 学习笔记

修复typecho主题(junichi)的几处小错误。

最近又折腾了这个Blog,选用了junichi这个模板,觉得还不错。
后来在测试和使用过程中,暂时发现有几处小“错误”,尝试修复一下。
其中涉及header.phppost.phpcomments.phparchives.php文件
现将过程记录下来,权当备忘,有需要的也可以参考。
本人代码小白,如有不对的、以及代码还能更优化、简洁高效的,请大佬们不吝赐教,予以斧正。

修改header.php的代码

原因:header.php文件中,左侧导航栏头像以及博客名称的两处链接路径,作者只用了/来指定,并没有自动获取当前路径,这样会导致typecho放在二级目录时,不能返回的正确首页,而是返回到根目录的路径。

以下为修复办法:

用代码编辑软件(比如Notepad,别用记事本)打开header.php文件
Ctrl+F打开搜索<a href="/" style=代码
将上面的代码中的/替换成<?php $this->options->siteUrl(); ?>
修改后的代码应为:<a href="<?php $this->options->siteUrl(); ?>" style=

然后,再Ctrl+F搜索<h1><a href="/">代码
同理,将上面代码中的/,替换成<?php $this->options->siteUrl(); ?>
修改后的代码应为:<h1><a href="<?php $this->options->siteUrl(); ?>">
保存,修改完成。

修改post.php的代码

原因:发表文章时,发现此模板文件的最后更新时间与北京时间相差8小时。
因为post.php中的代码echo date('Y-m-d H:i:s'取得的时间为格林威治标准时间。
因我用的是虚拟主机,所以直接动手修改post.php的代码。

修改办法:

用代码编辑软件(比如Notepad,别用记事本)打开post.php文件
Ctrl+F打开搜索<?php echo date('Y-m-d H:i:s'代码
在上面代码<?phpecho date中间,插入以下代码:
date_default_timezone_set('PRC');
插入代码之后正确的完整代码如下:(插入代码后,记得检查代码前后是否空一格)
<?php date_default_timezone_set('PRC'); echo date('Y-m-d H:i:s'
保存,post.php修改完成。

修改comments.php的代码

原因:修改完post.php代码后,发表日志的时间是正确了。
但是发现,原来发表评论的正确时间,受上面代码影响,却+8小时。
不要问我技术上的东西,我也不懂解释,只有继续对comments.php的代码动手。

修改办法

用代码编辑软件打开comments.php文件
Ctrl+F打开搜索<?php $comments->date(); ?>代码
在上面代码<?php$comments中间,插入以下代码:
date_default_timezone_set('GMT');
正确的完整代码如下:(插入代码后,记得检查代码前后是否空一格)
<?php date_default_timezone_set('GMT'); $comments->date('Y-m-d H:i:s'); ?>
保存,comments.php修改完成。

修改archives.php的代码

原因:archives.php中,归档的文章列表有时间显示,同样存在PHP函数导致的时差问题。
显示时间比北京时间少了8小时。。

修改办法:

用代码编辑软件打开archives.php文件
Ctrl+F打开搜索<?php $this->widget('Widget_Contents_Post_Recent'代码
找到这个代码后,在其上一行插入<?php date_default_timezone_set('PRC'); ?>
加入代码后,正确显示如下:

            <?php date_default_timezone_set('PRC'); ?>
            <?php $this->widget('Widget_Contents_Post_Recent'

保存,各文件的时差问题基本解决。

本文标签:typecho  theme

发表新评论