博客程序更换为WordPress

(1)

2021年6月8日,博客程序更换为Wordpress了。

最近在测试博客升级到php 8的问题。结果,Typecho的一些插件,无法兼容php 8。有的插件可以靠升级解决,而数据库自动备份到邮箱的插件无法升级。它的作者的博客早已无法打开,我本人是外行无法解决。搜遍网络,只发现这个插件可以将数据库发送至邮箱。为保证博客长久运行,我决定将博客程序换成Wordpress。

虽然主机商那里每日备份一次数据库和文件,保留最近7次的备份,出问题了可以恢复。如果主机过期了,可以通过电子邮件的方式索取最近7次的备份。然而,这里面还是存在一些不确定因素,还是把数据库放在自己的邮箱里更踏实一些。

我知道有些博友在用VPS,上面安装有一些便捷的面板如宝塔等,可以将数据库备份到境内、需要你提供隐私信息的平台。然而,上一篇博文我说过,我不考虑把博客迁移到vps上面。我有vps,但只是用来玩的。过去用vps时出现过致命问题造成数据丢失,说明我没有独立管理重要数据的能力,一旦出现问题我无法独自处理,所以博客还是放虚拟主机上靠谱。

现在,我用的数据库备份插件是BackWPup。它可以通过第三方网址监控,定时访问特定的网址触发数据库备份,并发送至指定的电子邮箱。

2016年12月29日晚上博客重建,次日更换为Typecho。这几年,为折腾这个程序及其插件,我付出了很多精力,付出了很多心血。学到了很多东西,也付出了很多代价。2018年9月我移植了一个主题,主题我很是喜欢,用了三年。有一些隐形的bug,我找朋友帮我修复,就在他决定修复之前,我把博客程序换了。

论速度,Wordpress的延迟比Typecho高,文件数量及总文件大小比Typecho多了四倍,但都还在我的接受范围之内。配合Litespeed cache优化,以及简洁的主题,我还是很满意的。从此以后,安心写作,如无必要不再折腾。

兜兜转转,又回到了起点,似乎又回到了2011年3月29日。这一天,我第一次使用Wordpress。

(2)

这个博客使用的主题,是旧版的Write主题。该主题自2.x开始页面样式被重构,我不喜欢;且1.x下的一些可定制功能在2.x下变成收费版功能。幸好过去在测试时,我将旧版本主题保留了下来。

前些天进行Wordpress测试时,这个主题在PHP 8.0下面报错。开启Debug模式后,提示如下信息:

Wordpress报错

Write主题文件inc/widgets.php第109行是如下代码:

add_action( 'widgets_init', create_function( '', 'return register_widget( "Write_Widget_Profile" );' ) );

这里涉及一个create_function函数。

create_function在php8被移除

该函数在PHP 8.0及更新版本中已经移除。因此报错。参照这篇文章,进行如下修改:

兼容性修复

便正常了。