月光博客 » 网站建设 » 通过SQL语句转换WordPress数据

通过SQL语句转换WordPress数据

  对于大数据量的Blog之间的转换,往往使用通常的博客转换程序会非常慢,并且容易出错,对于基于MySQL的WordPress来说,上传的数据也有一定的限制,因此,我这里总结了一些直接通过SQL语句将Z-Blog转换到WordPress的方法。

  对于Z-Blog用户来说,可以先执行下面的SQL建立数据表。

CREATE TABLE blog_Article (
 log_ID int NOT NULL ,
 log_CateID int NULL ,
 log_AuthorID int NULL ,
 log_Level int NULL ,
 log_Url varchar (255)  NULL ,
 log_Title varchar (255)  NULL ,
 log_Intro longtext  NULL ,
 log_Content longtext  NULL ,
 log_IP varchar (15)  NULL ,
 log_PostTime datetime NULL ,
 log_CommNums int NULL ,
 log_ViewNums int NULL ,
 log_TrackBackNums int NULL ,
 log_Tag varchar (255)  NULL ,
 log_IsTop varchar (10) NOT NULL
)  ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;


CREATE TABLE blog_Category (
 cate_ID int NOT NULL ,
 cate_Name varchar (50) NULL ,
 cate_Order int NULL ,
 cate_Intro varchar (255) NULL ,
 cate_Count int NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;


  然后再使用“ACCESS数据库转换MYSQL数据库的软件”将数据库转换到MySQL,然后直接在MySQL之中执行如下的SQL语句即可实现数据库的转换。这里以Z-BLog 1.7转换到WordPress 2.3为例,以下是转换使用的SQL语句,执行SQL前请先清空以下几个表的数据:

INSERT INTO wp_posts(id, post_author, post_date, post_date_gmt, post_content, post_title, post_category, post_excerpt, post_status, comment_status, ping_status, post_password, post_name, to_ping, pinged, post_modified, post_modified_gmt, post_content_filtered, post_parent, guid, menu_order, post_type, post_mime_type, comment_count) SELECT log_ID,'1',log_PostTime,log_PostTime,log_Content,log_Title,log_CateID,log_Intro,'publish', 'open', 'open', '', log_ID, '', '', log_PostTime, log_PostTime, '', 0, log_ID, 0, 'post', '', 0 FROM blog_Article ;

INSERT INTO wp_terms(term_id, name, slug, term_group) SELECT cate_ID , cate_Name, cate_Intro, 0 FROM blog_category ;

INSERT INTO wp_term_taxonomy (term_taxonomy_id, term_id, taxonomy, description, parent, count) SELECT cate_ID, cate_ID, 'category', '', 0, cate_Count FROM blog_category ;

INSERT INTO wp_term_relationships select id, post_category from wp_posts ;

  如果安装了WP-PostViews插件,还可以执行下面的SQL语句将文章点击数导入到WordPress中:

INSERT INTO `wp_postmeta` select  log_ID , log_ID ,'view',log_ViewNums FROM blog_Article ;

  对于其他系统转换到WordPress,也可以使用类似的方法实现,例如我们可以转换Discuz的评论到WordPress的评论,使用类似下面的语句:

insert wp_comments (comment_post_ID,comment_author,comment_author_email,comment_author_url,comment_author_IP,comment_date,comment_date_gmt,comment_content,comment_karma,comment_approved,comment_agent,comment_type,comment_parent,user_id) select tid,author,'yourname@mail.com', '',useip,from_unixtime(dateline),from_unixtime(dateline),message,0,'0','','',0,0 FROM t_posts ;

顶一下 ▲()   踩一下 ▼()

相关文章

  1. 1
    linker   说道:
    重在考虑着链接形式方面!但wordpress的诱惑实在太大了!
    支持(7反对(2回复
  1. 2
    时光漫步   说道:
    学习一下,嘿嘿...
    啊是大三的 于 2010-10-19 14:33:37 回复
    sdafasdfsdaf
    支持(9反对(5回复
  1. 3
    cyg   说道:
    Z已经够好了。要好好利用!
    支持(9反对(5回复
  1. 4
    Taoii   说道:
    没一个Blog程序都有自己的API接口,而博客写作程序一般能访问不同类型的博客,比如zBlogWriter就可以访问MSN Space,Wordpress,zBlog,而且还能下载这些文章至本地计算机,那为什么不考虑一下子将这种博客写作工具软件改一下子,让它能够自动下载要转换的博客里的内容再将其自动按要求发布到目标博客程序上呢?我想这样的方法应该行得通的吧?
    支持(7反对(4回复
  1. 5
    wycom   说道:
    Z-BLOG 挺好.
    支持(10反对(7回复
  1. 6
    williamlong   说道:
    链接形式总归还是要发生一些变化的,所以有一些风险。
    支持(7反对(5回复
  1. 7
    kev   说道:
    这个实用性很强,学习了
    支持(6反对(4回复
  1. 8
    piaoyi   说道:
    呵呵。难道月光要离开Z-BLOG的阵营而投入wordpress了??。
    支持(8反对(6回复
  1. 9
    Heyi   说道:
    好文章,学习了。我转换zblog到wordpress,都是用Feed的Xml文件导入的,之后文章结构数字id都变了,哈。
    支持(6反对(4回复
  1. 10
    1255   说道:
    blog的问题就是数据格式不统一,用了一个就很难随便换到其它的blog。
    不过好像有api的,通过api接口可能比直接操作数据库好。
    支持(7反对(6回复
  1. 11
    幼峰   说道:
    我这几天在本机上也弄了个php+mysql+wordpress 这wp的魅力确实大 我都想玩玩那个了 不过偶的博不是什么好博 也就将就zblog了 wp也就在自己的本机上玩玩而已
    支持(7反对(6回复
  1. 12
    sbing   说道:
    学习一下
    支持(7反对(7回复
  1. 13
    杀鸡敬猴   说道:
    太专业了,看不懂!
    支持(6反对(6回复
  1. 14
    feilong.org   说道:
    觉得有点复杂,学习。
    支持(7反对(7回复
  1. 15
    扬风   说道:
    转换更高的版本的OK不!!
    支持(6反对(6回复
  1. 16
    zylew   说道:
    好东西,以后很可能会用到的。
    支持(7反对(8回复
  1. 17
    不是俺   说道:
    这个会不会是说月光博客要转成wordpress的?
    支持(6反对(7回复
  1. 18
    2ssq   说道:
    强了,转了以后地址会变化很大的哦!
    支持(7反对(8回复
  1. 19
    linker   说道:
    正好用到,只是转换2.6.3时,要把第四条插入语句改下:
    INSERT INTO wp_term_relationships(object_id,term_taxonomy_id) select id, post_category from wp_posts ;
    支持(9反对(10回复
  1. 20
    williamlong   说道:
    目前还没有打算转换,因为转换的工作量和成本太大。
    支持(4反对(6回复
  1. 21
    Taoii   说道:
    对于链接形式的话,我觉得最好是能够统一,要是因为一个博客程序比现在用的好一点点却不得不放弃现有的所链接的话,那真的不如不转,比如现在的这种链接要是转到WP的话,就完全能够实现链接不变
    支持(6反对(8回复
  1. 22
    guwei   说道:
    不知道WordPress有没什么好的全静态的插件啊,就像Z-BLOG的一样,月光推荐下
    支持(5反对(7回复
  1. 23
    指甲彩繪   说道:
    有些復雜
    支持(5反对(7回复
  1. 24
    purplefire   说道:
    沙发都被你们抢走了,我来抢个板凳~哈哈
    也准备弄个WordPress的英文站点,貌似我不用转数据过去。
    支持(5反对(8回复
  1. 25
    不是俺   说道:
    俺觉着,只要转过去之后链接形式啥的都不变,基本上没有太大问题吧?
    支持(4反对(7回复
  1. 26
    小景   说道:
    难免出错,变异
    支持(4反对(7回复
  1. 27
    星云一点   说道:
    学习一下
    支持(6反对(9回复
  1. 28
    星级评分是怎么弄   说道:
    本文链接地址:https://www.williamlong.info/archives/XXXX.html
    和星级评分是怎么弄的
    教教我吧

    应该是程序本身就有的吧。我也不知道
    支持(5反对(8回复
  1. 29
    meons   说道:
    请问如何将百度空间转移到google blogger或者wordpress呢?谢谢。
    支持(5反对(8回复
  1. 30
    羅斯特咖啡   说道:
    如何從WP轉到Z-BLOG呢?
    支持(5反对(9回复
  1. 31
    创业tips   说道:
    不错的东西啊
    支持(6反对(11回复
  1. 32
    优美空间   说道:
    这里面的种类很多,内容也很全,进来学习了。
    支持(7反对(12回复

发表留言