将DedeCMS转换为WordPress是一项复杂但可行的任务,本文将详细介绍如何将DedeCMS的数据迁移到WordPress中,包括文章标题、全文内容以及点击数的导入。
1. 文章标题等基本数据导入
DedeCMS的文章标题、正文和栏目分别存储在不同的数据库表中,而WordPress则将文章标题和正文存储在同一张表上,栏目则存储在另一张表上。为了简化迁移过程,首先可以将DedeCMS全站的RSS文件(rss.php)保存下来,并使用WordPress自带的RSS导入功能来处理该文件。
通过RSS导入功能,可以在WordPress的wp_posts表中生成文章标题,同时在dede_terms表中生成文章目录并进行匹配。此外,RSS导入还会携带文章摘要、发布日期和自定义网址等信息。不过需要注意的是,RSS导入不会包含文章的完整内容。
2. 文章全文导入
DedeCMS数据库中的文章全文存储在dede_addonarticle表的body字段中。要将这些内容迁移到WordPress数据库中的wp_posts表post_content字段,需要借助一个中间桥梁——即dede_archives表。
具体步骤如下:
// 第一步:进入phpMyAdmin,在dede_archives表中添加一个名为body的新列
ALTER TABLE `dede_archives` ADD COLUMN `body` TEXT;
// 第二步:使用UPDATE命令将dede_addonarticle表中的body内容导入到dede_archives表的body字段中
UPDATE `dede_archives`, `dede_addonarticle`
SET `dede_archives`.`body` = `dede_addonarticle`.`body`
WHERE `dede_archives`.`id` = `dede_addonarticle`.`aid`;
// 第三步:将整个dede_archives表导入到WordPress数据库中
// 第四步:再次使用UPDATE命令将dede_archives表中的body内容导入到wp_posts表的post_content字段中
UPDATE `wp_posts`, `dede_archives`
SET `wp_posts`.`post_content` = `dede_archives`.`body`
WHERE `wp_posts`.`post_title` = `dede_archives`.`title`;
完成以上步骤后,文章的完整内容就已经成功迁移到WordPress的数据库中。
3. 文章点击数导入
要在WordPress中保留DedeCMS的文章点击数,可以安装一个名为Simple Hit Counter的插件。安装后,数据库中会新增一个名为wp_hitcount的表。
接下来的操作步骤如下:
- 在wp_posts表中新增一个名为hits的字段。
- 将dede_archives表中的点击数click字段导入到wp_posts表的hits字段中,匹配点为文章标题。
- 最后,将wp_posts表中的hits字段值导入到wp_hitcount表的hits字段中,这次的匹配点为wp_posts的ID和wp_hitcount的pid。
通过以上步骤,您可以顺利完成从DedeCMS到WordPress的数据迁移,确保所有重要数据都能完整保留。