章节目录
此文记录了如何把一个MovableType的博客导入Drupal的过程,也可当成是一个WordPress导入Drupal的教程。 大体思路是先把MovalbeType导入WordPress,然后通过Migration from WordPress模块把WordPress导入Drupal。
导入前导入后的文件结构区别
N/A表示在转换过程中会丢失。
- MovableType ---> WordPress ---> Drupal
- Entry ---> Post ---> Article
- Page ---> N/A ---> N/A 注:MovableType导出的文件不带Page的部分
- Category ---> Category ---> Tags(taxonomy)
- Tags ---> Category ---> Tags(taxonomy) 注:在MovalbeType导入WordPress过程中后会自动截取文章标题转录入Tags,会有大量Tags生成。
- Custom Fields ---> N/A ---> N/A
- Comment ---> Comment ---> Comment
- Trackback ---> Comment ---> Comment
MovalbeType导入WordPress
- 在MT 6后台,选 Tools -> Export Entries -> Export Website,可以得到一个TXT文件。
- 把这个TXT文件改名为 mt-export.txt ,上传到WordPress的 wp-content 目录下。
- 在WP后台,选 工具 -> 导入 -> Movable Type and TypePad (可能会提示需要安装插件) -> 导入 mt-export.txt
- 完成。
WordPress导入Drupal所需要的模块
- Token: https://www.drupal.org/project/token
- Migrate: https://www.drupal.org/project/migrate
- Migration from WordPress: https://www.drupal.org/project/wordpress_migrate
因为Migration from WordPress支持在线导入WordPress站点,不需要任何数据文件,使得两边导入非常便捷,不用担心导入体积较大的网站时会出现脚本超时的状况。导入过程也伴随一个导入向导,你可以在向导中设置各种导入参数,甚至可以在导入结束后把Drupal倒回原来的状态。
具体步骤
- 启用上面3个模块。
- 执行 Migration from WordPress,Drupal菜单 Home » Administration » Content » Migrate » Import from WordPress
- Step 1: Upload blog
注意,这里WordPress是https的先暂时改成http,否则Drupal不能登陆WordPress - Step 2: Authors
下一步,为原来的作者创建账号 - Step 3: Select content to import
- Step 4: Blog posts Import WordPress blog posts as 选 文章,这样才能把WordPress里的Post对应Drupal的Article
Import WordPress tags to the term reference field 选 Tags,把WordPress原来的Tags导入Drupal的Tags。
Import WordPress categories to the term reference field 选 Tags,把WordPress原来的Tags导入Drupal的Tags。
Default format for text fields 建议选 Full HTML。
Default format for comment text fields 建议选 Full HTML。 - Step 5: Pages 跟Step 4大同小异的设置
- Step 6: Review
点击Save import settings and run import进行导入
导入成功
配置新Drupal站点页面路径与原站一致所需要的模块
- Pathauto: https://www.drupal.org/project/pathauto
- Global Redirect: https://www.drupal.org/project/globalredirect
Drupal默认的路径是 /node/1 ,我的原路径是 /archive/yyyy/mmdd ,所以需要通过Pathauto模块配置新路径,Drupal菜单 配置 » URL别名 » PATTERNS 。 以下是我自己的Pathauto配置:
Pattern for all 文章 paths archive/[node:created:custom:Y]/[node:created:custom:m][node:created:custom:d][node:created:custom:H][node:created:custom:i] Pattern for all 标签 paths archive/tag/[term:name]
配置完Pattern,可以生成新路径了,Drupal菜单 配置 » URL别名 » BULK GENERATE,钩选 Content paths 和 Taxonomy term paths,更新。
如果想重新设置路径,可以在 DELETE ALIASES 里删除,再重复以上步骤。
在设置里还可以控制大小写和分隔符号,务求调整到新旧路径一致来避免404错误。
Character case -> Leave case the same as source token values.
Global Redirect模块用来重定向 /node/1 到 /about ,来防止不同URL显示同样内容的问题,和为页面添加canonical link。
至此MovableType导入Drupal基本完整了,以下是一些额外的部分来调整Drupal和MovableType的一致性。
显示归档页面需要的模块
- Chaos tool suite (ctools): https://www.drupal.org/project/ctools
- Views: https://www.drupal.org/project/views
目前我还在摸索学习如何通过Views这个模块“模仿”MovableType强大的归档功能,目前只做了一个按年份归档的页面。
此教程待补充。
添加新评论