“学会接受并欣赏命运发给我们的牌,也许会有意想不到的乐趣。
我总认为,坦然的心境就是感受到幸福的理由。”

f2blog转去wordpress

前段时间试过,可行。不过后来又有人发布转换程式了,可以直接转去wp2.5.1,也许用那个更好吧。
以下方法是我使用的。
不过呢,我还是会继续使用f2的,呵呵。

1. 先安裝好WP2.2

2. 登入你的的後台, 用RSS匯出, 記住使用的格式是 .XML (普通格式), 不是.gz

幾秒後, 系統會自動產生了.xml檔案, 把它 / 它們下載下來.

3. 登入cpanel / phpmyadmin, 把的資料庫完整地全部export (匯出)

4. 下載這個巨集程式, 並且解壓縮

http://www.box.net/shared/olnlhnh6l6

5. 下載EmEditor (我推薦都用它來改程式碼), 記住下載時選的是Professional版本

http://www.emeditor.com/download.htm

6. 安裝EmEditor後, 右鍵(Right click) .xml檔案 –> 內容 –>選擇打開檔案 –> 設定為EmEditor

7. 用EmEditor打開全部.xml檔案, 然後在頂部的工具列, 選擇Marcos –> Customize –> New 0–把f2rss.jsee加入

8. 之後, 對一個.xml檔案, 都執f2rss.jsee (一樣, 每個檔案都按 Marcos –> 下面有一個 1 f2rss.jsee, 按一下就可以了)

9. 每次執行完, 都要把.xml給存一次

10. 現在打開phpmyadmin, 把你的 sql給輸出, import(輸入)放在的資料庫裡面.

11. 打開的admin後台, 選擇 Manage–> Import –> RSS, 這後這一步你要小心的做. 假如當時產生了有幾個.xml的檔案, 比如說是:

-01-19-edfb40e9fb3febd25f7_v1.xml

-01-19-edfb44679fb3febs5f7_v2.xml

-01-19-edfb40e9fb3febd25f7_v3.xml

你永遠都要從最後的那一個xml, 即v3開始import. 假如你有7個xml, 那從最後的v7, v6, v5這樣子放進去….

12. 當所有RSS都成功import之後, 你就可以開始進行修改資料庫了


以下操作是SQL命令,建议在phpmyadmin里面进行。
在做下面動作前,是必須先透過RSS匯入f2blog的文章至wordpress的資料表中,接下來就直接做下面的動作了

1.新增欄位於wp_posts里面 f2blog_id int(12)
 ALTER TABLE wp_posts ADD f2blog_id int(12)

2.更新f2blog_id這個欄位資料,塞入f2blog_logs的id
UPDATE (wp_posts LEFT JOIN f2blog_logs ON wp_posts.post_title = f2blog_logs.logTitle)
SET wp_posts.f2blog_id = f2blog_logs.id

3.更新wp_post2cat的post_id,這是文章對應類別的資料表,先把這裡的編號整合更新
UPDATE (wp_posts LEFT JOIN wp_post2cat ON wp_posts.ID = wp_post2cat.post_id)
SET wp_post2cat.post_id = wp_posts.f2blog_id

4.更新wp_posts的ID
為避免編號重複,先將wp_posts的編號加個10000,如果你的文章超過一萬筆,那數字就自己多加幾個0吧
UPDATE wp_posts SET ID = ID + 10000
編號改完之後再來更新wp_posts的ID
UPDATE wp_posts SET ID = f2blog_id WHERE post_type = 'post'

5.轉換f2blog_comments時間欄位為varchar屬性
ALTER TABLE `f2blog_comments` CHANGE `postTime` `postTime` VARCHAR( 100 ) NOT NULL DEFAULT '0'

6.轉換f2blog_comments時間欄位的unixtime
UPDATE `f2blog_comments` SET `postTime` = FROM_UNIXTIME(`postTime`)
WHERE `f2blog_comments`.`id` >=1 LIMIT 99999

7.轉換f2blog_comments時間欄位為datetime屬性
ALTER TABLE `f2blog_comments` CHANGE `postTime` `postTime` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00'

8.整理完畢開始拋轉f2blog→wp
INSERT INTO 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 logId,author,email,homepage,ip,postTime,postTime,content,0,'1','','','0','0'
FROM f2blog_comments

9.更新wp的wp_post迴響數
UPDATE (wp_posts LEFT JOIN f2blog_logs ON wp_posts.ID = f2blog_logs.id)
SET wp_posts.comment_count = f2blog_logs.commNums

10.刪除wp_posts的f2blog_id(12)這個欄位
ALTER TABLE `wp_posts` DROP `f2blog_id`

這次多了兩個步驟,因為除了文章的編號要更新,文章對應類別的資料表(wp_post2cat)內的文章編號也要更新,既然f2blog與wordpress兩邊的編號都已經整合同步,再匯入迴響資料的時候直接帶f2blog的文章編號就可以了,所以跑完上面這幾個步驟就整個完成了!

用這種方式的好處呢,就是除了資料非常的完整之外,再也不用擔心別人家曾經連結過的資料會找不到網頁了。


这种方法会丢失留言本里的内容,以及评论作者会有不一致的情况。可以根据情况SQL修改评论作者名。
注意,如果数据表前缀不是默认的'wp_','f2blog_'需要对SQL语句做对应修正。
一些相关文件:
Downloadf2rss.zip (327 Byte ,Downloaded: 14 time(s).)

Trackback: Click to get trackback URL
Comments: 4 | Trackbacks: 0 | Read: 746
云飞满天 [ 2008-05-03 20:57 Home | Reply | Edit/Del ]
应该是simple_gray
我已经按照了,见我的链接
你这有些细节要好看的多,比如“类别”栏目
能否提供下载呢?:)
非常感谢
菲利亚斯 [ Replied on 2008-05-04 12:57 Home | Edit/Del ]
类别的效果是需要修改源码的,并不能单靠模板css。
另外我说的模板在这里可以下载到
http://www.mynokis.cn/blog/article.asp?id=80
那个Simple Blue Gray.
云飞满天 [ 2008-05-03 20:28 Home | Reply | Edit/Del ]
Secret Message
菲利亚斯 [ Replied on 2008-05-03 20:38 Home | Edit/Del ]
呵呵,我用的是基于simple_blue修改,
所以去找找这个模板就好了~
  • 1 
Write New Comment
Nickname(*): Password:
Website: Email:
Verify(*): Validation Image Option:
Avatar:
Content(*):