很多業主不知道,用 Visual Composer(也就是 WPBakery)做的網站,其實從上線第一天就被鎖住了,哪天想換個設計、換一套佈景主題,工程師報價後常常補一句:「這個沒辦法直接換,要整頁重做。」這是 Visual Composer 的硬傷,它把整個版面拆成一堆只有特定佈景主題看得懂的積木代碼,塞進每一頁的內文裡,換掉主題,這些積木就沒人翻譯,整頁直接噴短代碼。
這篇不談程式怎麼寫,我想用一個真實的改版案例,說清楚三件事:為什麼你的網站會被頁面編輯器綁死、綁死之後付出了哪些看不見的代價,還有真要替換的話實際上是怎麼運作的。
開始前先區分這兩支外掛:WPBakery 與 Visual Composer。早期綁在一些付費的商業佈景主題裡的的是 Visual Composer Page Builder,後來改名為現在的 WPBakery,然後同一間公司又另外開發了一套全新、效能更好擺脫短代碼依賴的現代化工具叫做 Visual Composer,並正式繼承了 Visual Composer Website Builder 這個名字。
這篇文章提到的 Visual Composer 指的是現在的 WPBakery,也就是早期綁在商業佈景主題裡面的那支,而非現在最新改用全新架構的 Visual Composer Website Builder。
頁面編輯器的外掛更新
你的網站是不是有這幾個症狀:外掛跳出更新通知,你不太敢按,因為上次一按版面就跑掉了;網站開起來越來越慢,客人滑到一半就關掉;想加個活動頁、改個排版,找原本的廠商卻已經找不到人,找新的廠商一看到後台又說「這我不敢碰」。
這些症狀看起來各自獨立,其實是同一個根。根就是頁面編輯器,Visual Composer 是台灣早期很多商業佈景主題內建的其中一套,你在後台看到一格一格拖來拖去、標著「Backend Editor」的介面,多半就是它。
Visual Composer 到底把什麼鎖住了
一般人以為網站的「內容」跟「外觀」是分開的,就像 Word 檔案,換個佈景樣式,字還是那些字。用原生方式做的 WordPress 網站確實是這樣,但 Visual Composer 不是。
它把你每一頁的版面,存成一堆像 [vc_row][vc_column] 這樣的代碼,直接混在文章內文裡。你可以把這串代碼想成一份「只有這家蛋糕店看得懂的食譜」——食譜(版面代碼)跟蛋糕店的特製模具(佈景主題)是綁在一起賣的,哪天你想換一家店,把食譜拿過去,新的師傅完全看不懂上面寫什麼,做不出同一個蛋糕。
我最近經手的客戶用的是 Basel 這套商業佈景主題,搭 Visual Composer 排版、Revolution Slider 做首頁輪播,還有英文、繁中、簡中三種語言,我把整站盤點了一遍,81 個頁面裡,有 74 頁的版面是這種代碼疊出來的。也就是說,這個網站超過九成的頁面,內容跟工具已經焊死在一起。
只要把 Visual Composer 這個外掛停用,或是換一套沒有內建它的佈景主題,原本漂亮的頁面,會直接變成一整頁的 [vc_row][vc_column_text]... 純文字代碼攤在客人面前。因為翻譯這些代碼的人(外掛跟主題)不在了,瀏覽器只好把食譜原封不動印出來。
這就是為什麼工程師會跟你說「不能直接換」。不是他不肯,是這個網站在結構上就換不了——你想換的不只是外觀,你得先把每一頁焊死的內容拆出來,用新的方式重做一次。這也是同樣一套邏輯,之前我在告別 Elementor 的改版紀錄裡談過,換成 Elementor 也是一樣的綁法,只是代碼長得不一樣。
被綁死之後,你其實一直在付三種代價
第一種是更新的恐懼。 因為版面靠外掛撐著,外掛一更新就可能跟版面打架,於是你變得不敢更新。但不更新,網站的安全性就一路裸奔。我接手那個網站時,它前台正噴著一個致命錯誤,原因是某個老外掛用了新版 PHP 已經移除的寫法,整個網站其實是半殘的——而且它先前還被駭客植入過後門,長期不敢動的網站,最後往往就是這個下場。
第二種是速度。 為了讓拖拉介面什麼都做得到,這類編輯器會在每一頁塞進大量它自己的程式與樣式,不管你這頁用不用得到。頁面越複雜、載入就越重。客人等待的每一秒,都是流失的訂單。
第三種是沒人敢接。 這是最貴的一種代價,卻最少人算進去。商業佈景主題加上一堆綁定外掛,等於把你的網站鎖進一個特定廠商的生態系。原廠停止更新、原本的工程師離職、接案的人退休,你的網站就成了一個沒人看得懂、沒人敢碰的黑盒子。我聽過太多業主的原話:「負責網站的員工離職,放了爛攤子沒人會維護」「網站出現小 bug 幾乎等不到人修」。
一個三語官網,是怎麼搬乾淨的
回到這個案例,業主的需求很明確:外觀盡量維持一樣,但要把 Visual Composer 跟 Revolution Slider 這兩個依賴拔掉,改用原生的佈景主題重做,讓網站以後好維護、能換人接手。
第一個決定,就跟很多人的直覺相反。有人會問,能不能寫個程式去把舊網站的畫面「抓」回來?這案例沒法,抓回來的只是渲染完的表面,拿不到底層真正的版面結構,三種語言還得各抓一次、自己配對,又慢又容易錯。
正確的做法是把整站的原始內容當成一份「藍本」——每一頁真正的排版、輪播設定、三語對照,全都完整地攤在眼前,照著它一頁一頁用原生佈景主題重刻。
動手前:把整個網站搬一份回本機
所以真正的第一步,不是改線上的網站,而是把整個站——所有檔案加上整個資料庫,大約 800 多 MB——完整複製一份回我自己的電腦,在本機開一個跟正式站一模一樣的副本。
這一步對業主來說有兩個很實際的好處。第一,接下來所有的拆解、重做、試錯,全都在本機副本上進行,你的正式網站從頭到尾一秒都不會被動到,客人照常瀏覽、照常下單,完全無感。第二,這個本機副本就是我逐頁對照的「標準答案」——改好的新版跟它並排擺在一起,哪裡差一點,一眼就看得出來。
這件事我分了三個階段做:
第一階段:先讓網站「跑起來」
第一步不是急著把每一頁重畫,而是先做一套「翻譯層」,讓原生佈景主題暫時看得懂舊版面那些代碼,也讓首頁的輪播能直接讀出資料、三種語言能正常切換。這一關只要能夠整站每一頁都打得開、沒有報錯、前人看不到任何一段外露的代碼就過關。
第二階段:「能瀏覽」與「一模一樣」差很遠
真正把新舊兩個網站擺在一起逐頁比對,落差比想像中大。主色是自動抓的深藍,跟原本網站的天藍其實差一截;內文字體套錯了一種,行距也不對;首頁有一整條客戶推薦區塊變成空白的色帶;切到繁體、簡體版時,首頁大圖破圖變成一片灰底;本來該是彩色 logo 的地方變成一行純文字;最新消息頁的版型也跟原本的排法完全不同。
單獨看每一項都是小事,但全部加起來,客人一眼就會覺得「這個網站怪怪的、好像哪裡不對」。做改版最怕的就是這種「說不上來但就是不對」的落差,這也是最吃工、最考驗耐心的一段。
第三階段:改用逐頁「量」出來
用瀏覽器打開原本的線上網站,把每個區塊真正的顏色、字體、寬度數值一個一個讀出來,這些數字是瀏覽器計算的數據,準到個位數。拿到真值,再回頭把新網站校到同一個數字。深藍校成實測的天藍、字體換回正確的那一種、容器寬度對齊到個位;破圖的大圖找回正確路徑、logo 換回原本那張彩色圖、地圖套回原本的深色樣式、最新消息頁改回單欄加側欄的排法。
接著是最吃耐心的一步:每一頁都做一輪「改之前 vs 改之後」的並排對照,一頁一頁確認到肉眼再也挑不出差別才算過關。74 頁三種語言全部用 AI 跑之後再人眼判斷。
全部重建完、每一頁都確認跟原本一模一樣之後,才把 Visual Composer、Revolution Slider 這些外掛正式停用。這時候再回頭看,前台的頁面已經完全不靠它們,網站徹底輕下來了。
客人看到的網站,外觀跟以前沒有差別;但骨子裡,版面不再是一堆焊死的代碼,而是乾淨的原生結構。以後想換設計、想加功能、想換一家廠商維護,都不會再被那句「這個沒辦法直接換」卡住。這也是我一直在做的方向,從商業佈景主題轉到原生的區塊佈景主題,把主導權還給業主自己,我也在新竹的一場小聚分享過同一套思路。
怎麼判斷你的網站該不該動
不用懂技術,你可以自己對照幾個訊號:
- 進到後台編輯頁面,看到一格一格的拖拉介面,或是切到某個模式會出現一堆
[vc_...]的方括號代碼。 - 每次要更新外掛或 WordPress,你都得先深呼吸,怕一按就跑版。
- 想換個設計或加個頁面,廠商報的價高到像重做一個新網站。
- 當初幫你做網站的人已經找不到,新的廠商看了後台面有難色。
只要中了兩項以上,你的網站大概就處在我前面說的那個「被綁死」的狀態。這不是說你今天非改不可,而是你該知道,這筆帳一直都在,只是還沒到期。
Visual Composer 這類頁面編輯器當年降低了做網站的門檻,這是它的功勞。但門檻降低的代價,是把你的內容跟一套特定工具焊在一起。等到你想長大、想換方向的那天,才會發現自己被綁住了。改版真正在處理的,不是換一張好看的皮,而是把網站的主導權重新拿回自己手上——這件事越晚做,累積的內容越多,搬起來越貴。
如果你的網站正好中了上面那幾條,歡迎找我聊聊。我可以先幫你盤點現在這個網站到底被綁死到什麼程度、搬成原生佈景主題要花多少力氣,讓你在花錢之前,先看清楚自己站在哪裡。