View Categories

多語外掛更新後,語言切換器不見或點了沒反應

< 1 分鐘閱讀

快速答案:多語外掛大版本更新後語言切換器消失、點了沒反應或跑版,通常是四件事之一:切換器的設定在新版被重置或搬了位置、附加模組(字串翻譯、媒體翻譯、WooCommerce 模組)版本沒跟上主程式、頁首模板被更新蓋掉、或優化外掛把切換器的 JavaScript 延遲了。先清快取,再到多語外掛的語言設定把切換器重新儲存一次,很多時候就恢復;不行就退回前一版,等相容更新。

為什麼會這樣 #

語言切換器是多語外掛裡跟佈景、頁首模板耦合最深的東西:它可能插在選單裡、頁首小工具區、Elementor 模板的一個小工具,或是佈景自己呼叫外掛的函式畫出來。外掛大版本更新常會改切換器的輸出方式或設定結構,舊設定沒被正確轉換,切換器就不見了或退回預設樣式。

另一個常見原因是模組版本不一致:WPML 本體更新了,字串翻譯、WooCommerce Multilingual 還是舊版,後台通常會有警告,前台的症狀就是切換器消失或切了語言不換內容。至於「切換器在但點了沒反應」,多半是下拉式切換器依賴的 JavaScript 被快取或優化外掛延遲載入,跟多語外掛本身無關。Google 翻譯型的切換器則另有一種壞法:它依賴外部服務,服務端改了介面就整個失靈。

怎麼處理 #

  1. 清三層快取(多語外掛自己的、快取外掛、CDN),無痕視窗重看。更新後看到的常常是舊快取。
  2. 把所有相關模組更新到相容版本。WPML 本體、字串翻譯、媒體翻譯、WooCommerce Multilingual 要一起更新;後台有版本不符的警告先處理掉。Polylang 與 Polylang for WooCommerce 同理。
  3. 語言設定裡重新儲存切換器。WPML → 語言 → 語言切換器選項,看選單切換器、頁尾切換器、小工具切換器各自還在不在,缺的重新加回、按儲存。
  4. 檢查頁首模板。Elementor 頁首或佈景頁首若在更新時被重建,切換器小工具可能被移除;每種語言的頁首模板都要看。切換器跟著整個選單一起不見的,多半是選單顯示位置的問題,見選單不見那篇
  5. 點了沒反應的:暫時關掉優化外掛的「延遲 JS」或把切換器腳本排除,再測。
  6. 都不行就退版。從更新前的備份還原,或把多語外掛退回前一版,先讓網站正常,再到測試站找出相衝的組合。作法同更新後 Elementor 打不開那篇

我們實際遇過的情況 #

一個網站的語言切換器讓頁首跑版,這類先看切換器插在哪裡、用的是哪種樣式(見翻譯後跑版那篇);多語外掛與 Elementor 版本不合、編輯器一直轉圈的例子,見更新後 Elementor 打不開。另一個網站原本用 Google 翻譯的切換工具,某天語言切不過去,最後改用外掛處理——依賴外部服務的切換器,壞的時候網站這端能做的很有限。

什麼時候該找人 #

切換器壞掉的同時,翻譯內容也跟著消失或錯亂(英文網址顯示中文內容、商品變化對不上),代表更新時資料庫轉換沒跑完,這時繼續在後台按東按西可能把翻譯關聯弄壞;退版也要先確認備份能還原。所以多語外掛的大版本更新,我們會先在測試站把每個語言跑過一遍,再動正式站。

常見問題 #

WPML 更新後語言切換器不見了怎麼辦? #

先清快取,再到 WPML→語言的切換器選項,看選單、頁尾、小工具切換器是否還在,缺的加回並儲存。

切換器還在,但點了沒反應? #

多半是優化外掛延遲載入了切換器的腳本,暫時關掉延遲 JS 或把它排除後再測。

可以直接退回舊版嗎? #

可以,但先確認有更新前的備份;翻譯內容也跟著錯亂時,代表資料庫轉換沒跑完,先別在後台亂按。

更新後網站壞掉、切換器不見?網站救援當日受理;想有人每月幫你在測試站先跑過再更新:網站守護方案