WordPress迁移到Typecho全过程

32次阅读
没有评论

共计 1523 个字符,预计需要花费 4 分钟才能阅读完成。

从 WordPress 转到 Typecho,首先要建立 Typecho 博客,建好后,首要的就是导入数据,这里选用 Wordpress To Typecho 插件直接将 WordPress 文章、评论、分类、标签等全部导入 Typecho。

数据迁移

下载插件 Wordpress To Typecho,并上传到 /usr/plugins 目录下。

这个插件是 Typecho 官方 2014 年前发布的,插件版本为 (v1.0.3 Beta),仅适用于 WordPress 2.7,但实际上 WordPress 6.3 也能用。

  1. 登录 Typecho 后台,进入菜单【控制台】→【插件】,将 Wordpress to Typecho 插件启用
  2. 进入该插件的 设置 界面,填好 WordPress 所在数据库的地址、端口、用户名、密码、数据库名称、表前缀,并【保存设置】
  3. 进入菜单【控制台】→【从 Wordpress 导入数据】,此时会看到导入提示界面,点击按钮【开始数据转换】即可
  4. 当系统提示转换成功后,数据就全部迁移到了 Typecho
  5. 完成后,可以禁用或删除这个插件

如果转换失败,系统会给出失败原因,很多情况是因为数据库设置错误导致的,只需重新设置 WordPress 所在的数据库信息即可。

可能出错

WordPress to Typecho 插件转换数据可能会出现 database query error 报错,需要把 MySQL 的严格模式关闭。

mysql -u root -p
SET GLOBAL sql_mode='';
exit;

再次尝试数据转换,便可成功导入数据了。

还原文章图片、附件

  1. 将 WordPress 的 wp-content/uploads 目录复制到 Typecho 的 usr/uploads 目录,注意保持目录结构不变
  2. 利用 SQL 语句完成图片路径的替换:update typecho_contents set text=replace(text,'wp-content/uploads', 'usr/uploads')

新网站设置

导入数据库文件后,原来 WordPress 站点的文章、分类、标签、评论都完美导入到 Typecho 站点了,但网站标题、副标题等都没有,此时就需要在【设置】→【基本】中进行相应的设置。

设置永久链接

Typecho 设置永久链接后,需在服务器或者虚拟主机设置伪静态规则。

Apache 环境下伪静态规则:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
</IfModule>

使用方法:在网站根目录创建.htaccess 文件,将上述规则复制粘贴到.htaccess 中即可。

其他问题

Q1 这篇文章不是由 Markdown 语法创建的, 继续使用 Markdown 编辑它吗?

出现这个问题有可能是,数据是从其他地方导过来的,文章正文开头缺乏一个特殊的语法内容:<!--markdown-->

这个语法内容决定了该篇文章是否采用 Markdown 语法进行解析。

解决问题 :在未开启 Markdown 语法解析的文章正文开头都加入该语法内容:update typecho_contents set text=concat('<!--markdown-->', TEXT);

Q2 如何将 JSON 格式的数据导入到 WordPress 数据库中?

解决问题 :可以使用 WP Import Export Lite 插件将 JSON 格式的数据导入到 WordPress 数据库中。

以上就是从 WordPress 迁移到 Typecho 的整个过程。

正文完
post-qrcode
 0
三毛
版权声明:本站原创文章,由 三毛 于2023-08-22发表,共计1523字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)