音乐播放器PlayAtWill for typecho插件(移植自wordpress)
1 移植wordpress音乐播放器到typecho
在之前的wordpress主题 [vfhky] 中,集成了三款不同风格的音乐播放器,觉得挺不错的。于是想把它们移植到typecho中,顺便学习一下typecho插件的制作。
由于typecho不能像wordpress那样可直接在functions.php中使用hook,它只能以插件plugins的形式实现。
在之前的wordpress主题 [vfhky] 中,集成了三款不同风格的音乐播放器,觉得挺不错的。于是想把它们移植到typecho中,顺便学习一下typecho插件的制作。
由于typecho不能像wordpress那样可直接在functions.php中使用hook,它只能以插件plugins的形式实现。
由于博客刚从wordpress转到typecho,所以对之前的数据库需要处理。在wordpress数据库中,文章和评论的时间记录形式和typecho不同:wordpress中登记的是北京时间,形如 2014-08-19 21:05:27;而typecho数据库中登记的是时间戳Unix timestamp,形如1408456593(对应标准北京时间是 2014/8/19 21:56:33 )。
于是,我在typecho中用date('Y-m-d H:i', $older_date)
函数把从数据库读取出来的Unix timestamp格式的$older_date
转换成形如 2014-08-19 21:05 的北京时间后,发现比当前的北京时间少了8个小时。GG一番,原来是时区导致的:格林威治时间与中国东八区本地时间相差8个时差。解决方法如下:
在由 WordPress 转向 Typecho 的过程中,主要难点是将 WordPress 中的文章和评论数据用 wordpress to typecho 插件剥离出来。经整理后再重新将文章转换为 markdown 格式发布到由ty搭建的本博客上,最后把评论导入到对应的文章下面,并对评论id重新排序。
通过插件把wordpress中文章和评论的数据转换成 typecho 形式的文章和评论数据,并导出为.sql备份文件。由于评论数据有1521条,对其id重新排序比较困难,所以博主将它们分拆为两个 .sql 文件(其中一个是utf-8格式的resultsql1.sql,另一个是gbk格式的resultsql2.sql)。
在Windows中安装 typecho 比较简单,只要先创建了数据库,然后安装过程和wordpress也类似。但是之前博主在自己的阿里云CentOS 6.5系统中安装 typecho,却出现了问题。
先用 mysql 的一个用户创建了一个数据库,然后进入typecho的安装页面,填写好相关信息。typecho 会自动检测输入的数据库信息是否正确。如果正确,那么就会出现下图的页面。因为博客的根目录权限是不可写的,所以typecho程序无法自动生成配置文件 config.inc.php 。于是把里面的代码复制出来,并在根目录下新建文件 config.inc.php ,然后把复制的代码粘贴进去。结果在点击“创建完毕,继续安装”后,安装页面就跳转到空白页面了。
由于之前对 iptables 不熟悉,所以在配置 iptables 的时候,直接执行命令iptables -F
。结果导致 Securecrt 中所有连接远端服务器的窗口都断掉了,而且博客的所有页面都无法打开。心中顿时一慌,ssh无法登录,即使博客中的程序和数据库已经备份了也无法取出了。
网上搜了一下,原来在使用这个命令之前一定要先执行命令iptables -P INPUT ACCEPT
。
在前面一篇文章介绍了阿里云的CentOS 6.5系统 LNMP 环境下,如何让 web 站点的更为安全。这篇文章主要从用户登录主机方式入手,简单分享下如何让自己的 Linux 主机更安全。
前面几篇文章介绍了阿里云的CentOS 6.5系统中如何搭建和配置 LNMP 环境,这篇文章主要说说 web 站点的安全配置。
默认同开通的阿里云 Linux 主机都是以 AY+随机数 命名的,修改方法如下:
###### 修改主机名HOSTNAME, 例如 HOSTNAME=typecodes , 然后:wq保存退出 HOSTNAME=typecodes ###### 接着执行 hostname 命令 [root@typecodes ~]# hostname typecodes ###### 退出ssh, 然后重新登录即可