2022-10-09 10:40:43 - 米境通
使用opencart比較早的朋友應(yīng)該用的都是比較老版本的opencart系統(tǒng),隨著時(shí)代的變化,為了讓網(wǎng)站能夠有更大的數(shù)據(jù)承受能力,優(yōu)化用戶體驗(yàn),opencart的版本也在不斷的...
文章目錄[+]
使用opencart比較早的朋友應(yīng)該用的都是比較老版本的opencart系統(tǒng),隨著時(shí)代的變化,為了讓網(wǎng)站能夠有更大的數(shù)據(jù)承受能力,優(yōu)化用戶體驗(yàn),opencart的版本也在不斷的更新,
很多老用戶都想讓自己的網(wǎng)站升級(jí)到opencart的最新版本,升級(jí)版本其實(shí)最和諧的就是搬遷原網(wǎng)站的數(shù)據(jù),但是對(duì)于opencart最新版本數(shù)據(jù)表的一些變化卻又不是很清楚,不知道改如何將舊版的opencart數(shù)
據(jù)搬遷到最新版本的opencart系統(tǒng)中,下面就為大家示范一次如何將opencart1.5.6.4版本數(shù)據(jù)搬遷到opencart3.0.3.2版本中。
它的整理邏輯流程是:讓新版本opencart系統(tǒng)同時(shí)連接新舊版本的數(shù)據(jù)庫(kù)-->比對(duì)需要搬遷信息數(shù)據(jù)表的字段-->找出數(shù)據(jù)表差異后查詢舊版本數(shù)據(jù)庫(kù)數(shù)據(jù),修改后用opencart新版本自帶的方法導(dǎo)入數(shù)據(jù)。
第一步,我們先搭建一個(gè)最新版本opencart網(wǎng)站在本地(自己的電腦上)。然后把自己opencart舊版本的整個(gè)數(shù)據(jù)庫(kù)下載出來,新建一個(gè)空的數(shù)據(jù)庫(kù)并導(dǎo)入進(jìn)去。
完成后我們打開新版本程序的system/framework.php,在連接數(shù)據(jù)庫(kù)的地方(全文件查詢//Database,大概在第78行)連接剛剛新建的舊版本數(shù)據(jù)庫(kù)。
//Database
if($config->get('db_autostart')){
$registry->set('db',newDB($config->get('db_engine'),$config->get('db_hostname'),$config->get('db_username'),$config->get('db_password'),$config->get('db_database'),$config->get('db_port')));
//新建一個(gè)連接數(shù)據(jù)庫(kù)的方法,這里注意前面要set(不同方法名),這樣待會(huì)兒調(diào)用舊版本數(shù)據(jù)庫(kù),因?yàn)槭潜镜貏?chuàng)建的,在同一數(shù)據(jù)庫(kù)里,賬戶密碼都一樣,這里我們只用輸入不同的數(shù)據(jù)庫(kù)名稱即可。
$registry->set('edb',newDB($config->get('db_engine'),$config->get('db_hostname'),$config->get('db_username'),$config->get('db_password'),'testdatabases.1564',$config->get('db_port')));
}
第二步:比對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)表的字段有什么不一樣的,為什么要比對(duì)數(shù)據(jù)庫(kù)的字段呢,因?yàn)閛pencart的很多數(shù)據(jù)功能基本上都是基于數(shù)據(jù)來實(shí)現(xiàn)的,所以數(shù)據(jù)存在的時(shí)候,功能就能夠正常使用了。下面是我對(duì)
比分類數(shù)據(jù)表的部分示范。(溫馨提示:如果大家對(duì)opencart數(shù)據(jù)庫(kù)表結(jié)構(gòu)還不夠可以查看opencart3.0版本數(shù)據(jù)庫(kù)數(shù)據(jù)表字典(詳細(xì)篇),其實(shí)找到信息相關(guān)數(shù)據(jù)表還有一個(gè)規(guī)律的,例如你想找商品相關(guān)的數(shù)據(jù)表,在admin后臺(tái)商品管理頁(yè)面的路由是route=catalog/product,所以在opencart數(shù)據(jù)庫(kù)中搜索product,一般表前綴(一般默認(rèn)的是oc_)+product開頭的都是商品信息相關(guān)聯(lián)的數(shù)據(jù)表。)
根據(jù)上面的提示藍(lán)色文字內(nèi)容,我們可以知道opencart新舊版本的分類數(shù)據(jù)相關(guān)的表一共有6個(gè)(oc_category,oc_category_description,oc_category_filter,oc_category_path,
oc_category_to_layout,oc_category_to_store),下面只為大家展示了分類兩張表的對(duì)比。
下圖是對(duì)比分類主表,我們可以看出分類主表新版本與舊版本字段無差別,
下圖是對(duì)比分類描述表,分類描述數(shù)據(jù)表中,opencart新版的分類描述數(shù)據(jù)表中多了一個(gè)meta_title的字段。