把文章从DeDeCMS织梦文章系统转到WordPress上

2010-07-27 13:26:01 评论(16)
最近把所有数据从织梦文章系统转移到WordPress上,在这里分享一下这个数据转移的思路。本文介绍了如何使用SQL导入文章标题、文章全文以及点击数。
请分享到:


最近把所有数据从织梦文章系统转移到WordPress上,在这里分享一下这个数据转移的思路:

1. 文章标题等基本数据导入

织梦的文章标题、正文和栏目分别存放在三个不同的表上,但WordPress把文章标题和正文放在一个表上,栏目放在另外一个表上。为了简化后面的工作,第一步我首先把织梦的全站RSS文件(rss.php)保存下来(参见这里制作该文件http://bbs.dedecms.com/read.php?tid=261237),然后使用WordPress自带的RSS导入该文件。这样就可以使WordPress在wp_posts上生成文章标题,在dede_terms上生成文章目录,并匹配起来。通过RSS导入,wp_posts上还导入了文章的摘要、日期、自定义网址等数据。但RSS导入不会导入全文。

2. 文章全文导入

织梦数据库的文章全文储存在dede_addonarticle表上的body里,我们要把这个body的内容转到Worpress数据库里wp_posts表上的post_content里。这个转换,需要使用一个桥梁——那就是dede_archives,即dede_addonarticle上body的内容先转到dede_archives上,再从dede_archives上再转到wp_posts上的post_content里。这两次转换的匹配点,分别是织梦里的文章id,以及Wordpress里已经导入了的文章标题(这与织梦里的文章标题是一样的)。具体步骤如下:

进入phpMyAdmin,在织梦数据库里的dede_archives表上,添加一个列,命名为body,然后用UPDATE命令把dede_addonarticle上的全文(body)导入到dede_archives的body上,以dede_addonarticle上的aid和dede_archives上的id为匹配点:

UPDATE `dede_archives`,`dede_addonarticle`
SET `dede_archives`.`body`= `dede_addonarticle`.`body`
WHERE `dede_archives`.`id` = `dede_addonarticle`.`aid`

接下来把整个dede_archives表导入到WordPress的数据库上,使其与wp_posts同在一个数据库下。

再次使用UPDATE命令把,把dede_archives上的body导入到wp_posts上的post_content上,以文章标题为匹配点 (前提是,你的文章标题都是唯一的):

UPDATE `wp_posts`,`dede_addonarticle`
SET `wp_posts`.`post_content`= `dede_archives`.`body`
WHERE `wp_posts`.`post_title` = `dede_archives`.`title`

3. 文章点击数导入

在WordPress上安装一个叫Simple Hit Counter的Plug-in,这样数据库里就出现一个叫wp_hitcount的表。

在wp_posts增加一个叫hits的column,然后把dede_archives上的点击数click导入到wp_posts的hits上,仍然以标题为匹配点。

最后把wp_posts的hits导入到wp_hitcount的hits上,这次以wp_posts的ID和wp_hitcount的pid为匹配点。


本页浏览次数:48007

相关文章:

最新评论:

  • 图钉网说道:

    能有个软件转换就好了

  • [...] 把文章从DeDeCMS织梦文章系统转到WordPress上 | 何文超个人博客 转载请保留,文章转载自:中国站长资讯CNZZ.info 原文地址 [...]

  • gdgirl说道:

    超哥您好,按您文中所示已装了全文RSS,但全站生成后只有一个页面哦,我的文章有六千多,难道所有的文章在rss.php页面,另请问下保存rss.php页面是直接将页面另存为吗,如是则另存哪种格式,期待您的回复,谢谢

    • 何文超说道:

      应该是的,生成后的全站RSS已经包含所有文章的基本信息(标题、日期等)。rss.php是直接另存为,文件格式应该是.rss,我不太记得了,但你可以试一试。不过我觉得文件名(包括后缀)应该不重要,在Wordpress的RSS导入工具里选择那个文件即可。

  • 松鼠男说道:

    如果要把dede全站转换成wp的话,是不是直接数据库全文转换就可以了呢?

  • 魔钥说道:

    恩,非常感谢,已经弄好了,那天在腾讯微博上请教你了。

  • 魔钥说道:

    对数据库不了解,可以教下怎么把DeDeCMS转到WordPress吗?

  • brnjah说道:

    不知道为什么,我的dedecms数据导出后是乱码

  • 左右说道:

    确实有点复杂~~~~~

    飘过~看还有其他方法吗

  • 安全减肥说道:

    学习了,还是要慢慢消化,就比如安全减肥一样

  • 发表评论

    电子邮件地址不会被公开。 必填项已用*标注


    *