使用織夢(mèng)CMS每個(gè)月都被黑,打完官方最新補(bǔ)丁不久又有漏洞繼續(xù)被黑,算是受夠了,果斷把網(wǎng)站從天殺的dedecms中搬家到wordpress程序,網(wǎng)上搜索轉(zhuǎn)換教程,折騰幾個(gè)小時(shí),順利把網(wǎng)站的文章轉(zhuǎn)移到wordpress程序,保留了文章點(diǎn)擊數(shù)、文章日期、文章分類,文章標(biāo)簽的數(shù)據(jù)表著實(shí)弄不過(guò)來(lái),只能放棄!下面是具體的操作方法,操作前請(qǐng)備份好網(wǎng)站數(shù)據(jù)。
1、DEDECMS文章標(biāo)題等基本數(shù)據(jù)導(dǎo)入wordpress站點(diǎn)
織夢(mèng)CMS的文章標(biāo)題、正文和欄目分別存放在三個(gè)不同的數(shù)據(jù)表中,而wordpress則把文章標(biāo)題和正文放在一個(gè)數(shù)據(jù)表,欄目(分類目錄)放在另一個(gè)數(shù)據(jù)表中,為了簡(jiǎn)化后面的工作,第一步是制作生成織夢(mèng)CMS的全站RSS文件(制作方法:http://fr188.cn/2549.html),然后通過(guò)wordpress程序后臺(tái)——工具——導(dǎo)入——RSS,上傳導(dǎo)入生成的織夢(mèng)全站RSS文件。
這樣就可以使wordpress在wp_posts數(shù)據(jù)表上生成文章標(biāo)題,在wp_terms數(shù)據(jù)表上生成文章分類,并匹配起來(lái),此外通過(guò)RSS導(dǎo)入,wp_posts數(shù)據(jù)表上還導(dǎo)入了文章摘要、日期、自定義網(wǎng)址等數(shù)據(jù),但是RSS不會(huì)導(dǎo)入全文!
2、導(dǎo)入織夢(mèng)CMS文章全文到wordpress站點(diǎn)
織夢(mèng)文章的數(shù)據(jù)存儲(chǔ)在dede_addonarticle數(shù)據(jù)庫(kù)的body字段中,現(xiàn)在需要把body字段的內(nèi)容轉(zhuǎn)到wordpress數(shù)據(jù)庫(kù)的wp_posts數(shù)據(jù)庫(kù)的post_content字段里。
這個(gè)轉(zhuǎn)換需要使用一個(gè)橋梁——那就是dede_archives數(shù)據(jù)表,即dede_addonarticle上body的內(nèi)容先轉(zhuǎn)到dede_archives上,再?gòu)膁ede_archives轉(zhuǎn)到wp_posts的post_content里。這兩次轉(zhuǎn)換的匹配點(diǎn),分別是織夢(mèng)里的文章id,以及Wordpress里已經(jīng)導(dǎo)入了的文章標(biāo)題(這與織夢(mèng)里的文章標(biāo)題是一樣的)。
具體的操作步驟如下:
進(jìn)入phpmyadmin,選擇dedecms網(wǎng)站使用的數(shù)據(jù)庫(kù),在SQL輸入框中執(zhí)行以下SQL語(yǔ)句,在織夢(mèng)數(shù)據(jù)庫(kù)的dede_archives表上,添加字段body:
ALTER TABLE dede_archives ADD body longtext NOT NULL
然后再執(zhí)行以下SQL語(yǔ)句把dede_addonarticle數(shù)據(jù)表中的body字段內(nèi)容導(dǎo)入到dede_archives的body字段,語(yǔ)句以dede_addonarticle的aid和dede_archives的id為匹配點(diǎn):
UPDATE dede_archives,dede_addonarticle SET dede_archives.body = dede_addonarticle.body WHERE dede_archives.id = dede_addonarticle.aid
接著通過(guò)phpmyadmin導(dǎo)出功能把dede_archives數(shù)據(jù)表導(dǎo)出,然后再通過(guò)導(dǎo)入功能把該數(shù)據(jù)表導(dǎo)入wordpress網(wǎng)站使用的數(shù)據(jù)庫(kù)中,使其與wp_posts數(shù)據(jù)庫(kù)處在同一個(gè)數(shù)據(jù)庫(kù)里。
下面再次使用SQL語(yǔ)句把dede_archives的body導(dǎo)入到wp_posts上的post_content上,以文章標(biāo)題為匹配點(diǎn)(前提是文章標(biāo)題都是唯一的):
UPDATE wp_posts,dede_archives SET wp_posts.post_content = dede_archives.body WHERE wp_posts.post_title = dede_archives.title
至此文章內(nèi)容部分轉(zhuǎn)換完成!
3、織夢(mèng)CMS文章點(diǎn)擊數(shù)導(dǎo)入wordpress網(wǎng)站
織夢(mèng)CMS的文章有點(diǎn)擊數(shù)(即是文章的閱讀數(shù)),不導(dǎo)入wordpress怪可惜。
在wordpress上安裝Simple Hit Counter插件,啟用后數(shù)據(jù)庫(kù)里會(huì)生成wp_hitcount表,在SQL輸入框中執(zhí)行以下語(yǔ)句在增加hits字段:
ALTER TABLE wp_posts ADD hits int(10) NOT NULL
執(zhí)行以下SQL語(yǔ)句,把dede_archives上的點(diǎn)擊數(shù)click導(dǎo)入到wp_posts的hits上,仍然以標(biāo)題為匹配點(diǎn):
UPDATE wp_posts,dede_archives SET wp_posts.hits = dede_archives.click WHERE wp_posts.post_title = dede_archives.title
最后執(zhí)行以下SQL語(yǔ)句把wp_posts的hits導(dǎo)入到wp_hitcount的hits上,這次以wp_posts的ID和wp_hitcount的pid為匹配點(diǎn):
UPDATE wp_posts,wp_hitcount SET wp_hitcount.hits = wp_posts.hits WHERE wp_hitcount.pid = wp_posts.ID
至此點(diǎn)擊數(shù)轉(zhuǎn)換完成,然后在模板中添加Simple Hit Counter插件調(diào)用代碼即可。
附:我習(xí)慣使用wp-postviews插件,所以我是把織夢(mèng)CMS文章點(diǎn)擊數(shù)轉(zhuǎn)換為wp-postviews插件的瀏覽數(shù)。但是由于該插件需要文章有瀏覽數(shù)之后才會(huì)在數(shù)據(jù)庫(kù)中生成meta_key的值,因此需要先在wp_postmeta表中添加對(duì)應(yīng)的meta_key的值。
執(zhí)行以下SQL語(yǔ)句,把文章ID導(dǎo)入wp_postmeta中的post_id字段:
INSERT INTO wp_postmeta(post_id) SELECT ID FROM wp_posts
執(zhí)行以下SQL語(yǔ)句,把上面添加的post_id中的meta_key字段的null設(shè)置為views值:
UPDATE wp_postmeta SET meta_key='views' WHERE meta_key IS NULL
執(zhí)行以下SQL語(yǔ)句,把上面添加的post_id中的meta_value字段的null設(shè)置為0值:
UPDATE wp_postmeta SET meta_value='0' WHERE meta_value IS NULL
然后再把wp_posts的hits導(dǎo)入到wp_postmeta數(shù)據(jù)表中的meta_key字段的值views對(duì)應(yīng)的meta_value,SQL語(yǔ)句如下:
UPDATE wp_postmeta,wp_posts SET wp_postmeta.meta_value=wp_posts.hits WHERE wp_postmeta.post_id=wp_posts.ID AND meta_key='views' 文章來(lái)源:https://www.mywpku.com/dedecms-to-wordpress.html
轉(zhuǎn)載請(qǐng)注明:?蝸牛SEO? ? 完美織夢(mèng)Dedecms轉(zhuǎn)WordPress方法