前阵子曹大发了一篇《你不输出,怎么进步呢。》,里面提到通过输出可以倒逼自己不断地总结和归纳所学到的东西,蛮认可的。一直以来,觉得自己的写作水平很有限,可以说几乎就没有正正经经写过什么东西,如果不想办法逼着自己通过写作的方式来输出,那这辈子估计写作水平就这样了。
打算多在自己的博客上写一些东西,工作的总结、技巧的分享等等都可以。然后觉得自己博客的模板是不是太简单了一些?就起了换模板的心思,花了一点时间来寻找新的模板,找到了NICETHEME的LivingCoral主题,但是它只适用于Wordpress博客系统,并不适用于我现在用的Typecho博客系统,随之产生的问题就是怎么把博客从Typecho无缝迁移到Wordpress。因为常年从事互联网运营工作的问题,所以比较关注SEO这块,网站系统的迁移并不能仅仅是数据的迁移,还要考虑到迁移后的url结构是否跟之前一致,从而减少死链的产生,避免网站在搜索引擎中权重的下滑。
经过一段时间的寻找,终于找到了ByeTyp这款插件,工作原理是将Typecho中的数据导出为WordPress可识别的WXR文件,然后再用Wordpress的导入工具导入数据。下面详细介绍一下具体操作。
安装方法
访问ByeTyp项目主页:https://github.com/ibadboy-net/ByeTyp 下载最新版的插件。下载后将插件上传并安装到Typecho上。注意上传的时候要为插件的文件夹命名为ByeTyp,否则插件将无法正常运行。
使用方法
启用插件后,按照以下顺序操作,导出当前Typecho的数据。
控制台->数据导出->导出XML文件
接下来将导出的xml文件导入到WordPress中。按照这个顺序操作:
工具->导入->WordPress->运行导入器(未安装的话就先安装)->选择文件->上传并导入->选择导入的文章所属的用户,之后提示是否导入媒体,随便点就行
之后你就会看到你在Typecho上的文章、分类目录、标签、评论等数据都出现在了WordPress上,但是别急着高兴,因为我们还没能将附件也导入过来。
迁移附件
将Typecho站点中的/usr/uploads目录下面的文件转移到WordPress的/wp-content/uploads目录下。之后在数据库中替换图片资源路径,执行以下SQL语句:
UPDATE wp_posts SET post_content = REPLACE( post_content, '/usr/uploads/', '/wp-content/uploads/');
这样,整个之前Typecho站点的数据都转移到Wordpress系统下了。
再说个题外话,当时我在转移数据导入xml的时候,只要点击上传xml文件的按钮,网站就显示无法打开,我怀疑过是PHP版权的问题、Wordpress导入插件兼容性的问题..等等等等,Wordpress换版本重装过N遍,最后偶然发现是我服务器安全软件的问题,因为我服务器用的是宝塔面板,有安装安全软件,禁止了我IP上传文件...当时,真是一万只草泥马从我脑海中跑过....
操作环境
- Nginx1.18.0
- PHP7.3
- MYSQL5.6
- Typecho1.1
- WordPress5.6
引用文件