外掛才剛裝上,或只是把某個最佳化選項打開,前台的排版卻莫名其妙跑掉,按鈕位置歪了、輪播停在原地不會動,甚至打開瀏覽器主控台會看到一行陌生的錯誤訊息。這是啟用快取外掛之後常見的意外,快取外掛升級版本、或多開一項最佳化選項之後,同樣容易出現這種狀況:Elementor 編輯器裡看到的預覽,跟前台實際呈現的畫面兜不起來。
問題多半出在快取外掛的合併(combine)與壓縮(minify)功能,會動到 Elementor 產生的 CSS 與 JavaScript 檔案。原本各自獨立的檔案被接成一個大檔案,只要其中一段程式碼執行出錯,排在後面的程式碼就整段停擺。快取外掛不是造成版面跑掉的唯一原因,但確實是最容易被忽略、也最好排除的一種。
先把「跑掉」的樣子分清楚,才知道要往哪個方向查。版面問題多半跟四款常見快取外掛脫不了關係:WP Rocket、LiteSpeed Cache、W3 Total Cache、Breeze,這幾款外掛各自的排除欄位設定方式並不相同。
快取生效後 Elementor 版面壞掉的三種樣子
Elementor 官方在「Troubleshooting layout Issues」說明頁裡,把版面異常分成三大類:改動看不到(Changes Do Not Appear Online)、樣式衝突(Style Conflict Issues)、平板與手機版顯示問題(Tablet/Mobile View Issues)。前兩類列出的常見成因裡,都明確把快取外掛與最佳化外掛列為常見兇手之一,代表這不是少見的邊緣案例,而是官方文件本身就承認的常態。
對照到實際畫面,這三大類具體會長成三種樣子。第一種是版面位移、欄位彼此擠壓、元素疊在一起,通常是某段 Elementor 產生的 CSS 沒被套用,或只套用了一半,按鈕跑到不該在的位置、欄位寬度算錯、間距整個跑掉,都屬於這一種。第二種是互動元件失效:黏頂選單(sticky)滾動時不會固定住、彈跳視窗按了沒反應、輪播停留在第一張不會切換,這類問題通常不是 CSS 的事,而是相關的 JavaScript 沒有正確被執行。第三種比較容易被忽略,桌機打開一切正常,換成手機或平板卻整個斷版,這跟響應式斷點相關的 CSS 被漏掉、或載入順序被打亂有關,只測桌機完全看不出來。
判斷自己遇到的是哪一種,決定了該往哪個方向查。版面位移和斷版多半是 CSS 的問題,互動元件失效多半是 JavaScript 的問題,先分清楚,才不會把時間花在錯的方向上。
從主控台判斷壞的是 CSS 不見還是 JS 斷了
打開瀏覽器的開發者工具,是動手改任何排除設定之前該做的第一件事。用滑鼠右鍵點畫面選「檢查」,或直接按 F12,切到 Console 分頁,紅色的錯誤訊息會直接顯示腳本停在哪一行、因為什麼原因中斷,比對著版面用眼睛猜快得多。
LiteSpeed Cache 官方文件「Troubleshooting CSS/JS Issues」提供一套具體的二分判斷法:先確認所有 JavaScript 最佳化功能維持開啟,CSS 相關的最佳化功能全部關閉,清除快取後重新整理,看畫面亂不亂。如果這時候畫面還是亂的,代表問題出在 JavaScript,可以把範圍鎖定在這一類、去查是哪個檔案的問題;如果畫面正常,就反過來,關掉 JavaScript 最佳化、換開 CSS 最佳化再測一次,藉此把問題鎖定在其中一類。這套方法不限於 LiteSpeed 使用者,換成別款快取外掛,一樣可以照這個邏輯先關一類、留一類,逐步縮小範圍。
Console 裡常見的一行錯誤是 elementorFrontendConfig is not defined。這代表 Elementor 前端要用到的一個設定變數,在需要它的程式碼被執行之前還沒被定義出來,通常是腳本的載入順序被合併或延遲載入功能打亂造成的:本來應該先載入、先執行的那段程式碼,因為被排到後面或被切開,導致依賴它的程式碼找不到這個變數而整段報錯。看到這行訊息,方向已經很明確,問題出在 JavaScript 的最佳化選項,該往排除清單去查,而不是去改 CSS 設定。

minify 與 combine 打壞 Elementor 的技術原因
快取外掛的合併(combine)功能,會把頁面用到的多個 CSS 或 JavaScript 檔案接成一個檔案再送出去,目的是減少瀏覽器要發出的請求數量。這個做法本身沒有問題,但只要合併進去的其中一段程式碼執行時出錯,同一個合併檔案裡排在它後面的程式碼就會整段停止執行,不是只有出錯的那一小段失效,而是後面所有內容一起停擺。這正是為什麼有時候只是某個外掛的一小段腳本寫壞,卻能讓整個頁面的互動功能全部失靈,因為它們被綁進了同一個檔案。

Elementor 自己也有一層獨立的快取機制,每篇文章或頁面都會依內容動態產生對應的 CSS 檔案,存放在自己的快取資料夾裡,不需要每次讀取頁面都重新運算一次樣式。這一層跟外部的快取外掛是疊在一起的兩套系統,各自獨立運作、也各自需要被清除。只要其中一套沒有跟著另一套同步清掉,就會出現「Elementor 編輯器裡看到新版內容,前台卻還是舊版畫面」的落差,這也是為什麼光按快取外掛的清除快取按鈕,有時候問題還是沒解決,因為 Elementor 自己那一層還沒被清乾淨。
WP Rocket 官方文件「Using Elementor with WP Rocket」說明,Elementor 產生的文章層級 CSS 檔案,WP Rocket 會自動排除在 CSS 壓縮功能之外,理由正是為了避免這層快取被過於頻繁地清除、造成效能反而變差。同一份文件也列出三個會觸發 WP Rocket 局部或全站清除快取的 Elementor 動作:Elementor 的 CSS 印出方式設為外部檔案、且元素快取設為預設或啟用狀態時;在 Elementor 編輯器裡更新文章或頁面時;以及 Elementor 的維護模式被切換時。知道這三個動作會連動清快取,遇到改了內容卻沒生效的情況,才知道該檢查哪一個環節。
兩層快取沒同步的狀況,並不是 WP Rocket 獨有的個案。Breeze(Cloudways 開發的快取外掛)官方在 WordPress.org 外掛頁面的版本更新紀錄裡,也持續出現跟 Elementor 快取清除相關的修正項目,代表這類相容性問題是各家快取外掛長期都在處理,不是設定一次就永遠不會再發生的事。
用繞過參數重新載入不經快取與最佳化的版本
在動手改任何排除欄位之前,先確認問題真的跟快取有關,而不是主題或別的外掛本身就有衝突,這一步能省下大量走錯方向的時間,卻是多數只教清快取的教學文章漏掉的一步。做法很簡單,在網址後面加上一段參數,載入完全沒經過快取和最佳化處理的原始版本,直接對照看版面正不正常。
WP Rocket 提供的參數是 ?nowprocket,直接接在網址後面即可載入未快取、未經過壓縮合併處理的原始頁面,是 WP Rocket 官方教學裡用來找出檔案原始網址的第一步。LiteSpeed Cache 的做法邏輯相同,參數是 /?LSCWP_CTRL=before_optm,接在網址後面同樣能看到沒有經過最佳化處理的版本。兩款外掛的參數寫法不一樣,用途完全相同:拿掉快取外掛的介入,看純淨版本長什麼樣子。
測試的時候,記得搭配無痕視窗,或換一個沒有登入 WordPress 後台的瀏覽器。原因是瀏覽器本身也會快取靜態資源,如果沒排除這個變數,很容易把瀏覽器快取沒清乾淨誤判成排除清單沒設對,白白改了一輪設定卻抓錯問題。如果加上繞過參數之後版面就恢復正常,代表問題確實出在快取外掛的最佳化功能,可以放心往下查排除清單;如果繞過之後版面依然不對,代表兇手是主題或其他外掛,繼續在快取設定裡打轉只會浪費時間。
Elementor 內建的 Regenerate Files & Data,修得好與修不好的界線
多數中文教學文章遇到 Elementor 版面問題,唯一會教的一招就是重新產生檔案。這一招確實有用,但只對特定一種情況有效,就是 Elementor 自己產生的 CSS 過期,或跟編輯器裡實際的內容不同步。先弄清楚它的作用範圍,才不會做了半天卻搞錯方向。
操作位置在 Elementor 選單裡的 Tools(工具),官方文件「Troubleshooting layout Issues」的 Cache Issues 段落列出標準流程:先到 Tools 底下的 Clear files & data,點擊 Regenerate Files 按鈕,把 Elementor 之前產生的所有 CSS 檔案刪掉,依目前的設計資料重新產生一份乾淨的版本。做完這一步,還要回到頁面更新一次;如果更新按鈕是灰的按不下去,就先做個小改動讓它能被按下。接著要清除包含伺服器端快取、正在使用的快取外掛、瀏覽器快取在內的所有快取層,只清一層,另外幾層的舊版本還是會被叫出來顯示。
這一招修得好的情境,是 Elementor 更新版本之後、CSS 產生邏輯跟著換了一版,導致舊的快取檔案跟新邏輯對不上;或是編輯器裡改了設定,前台卻還顯示改之前的樣子。修不好的情境,是快取外掛的合併與壓縮功能把 Elementor 的檔案結構本身打壞,這時候 Elementor 重新產生出來的檔案結構是對的,但快取外掛照樣會把它壓縮、合併成有問題的版本,重新產生再多次也沒用。做完 Regenerate Files 這一步,版面依然故障,就代表問題不在 Elementor 自己這一層,該往下查快取外掛的最佳化選項。
用逐項關閉最佳化選項的排除法揪出真正的兇手
確認問題出在快取外掛之後,接下來要做的是一套系統化的排除法,取代「整個關掉快取」這種一刀切的做法。關掉快取雖然能讓版面恢復正常,也等於放棄了快取帶來的載入速度,不是長久的解法。
第一步,先把前面用主控台判斷出的可疑類別,CSS 或 JavaScript,兩種最佳化功能整組關掉,清除快取,重新整理測試,確認關掉整組功能之後版面真的恢復正常。這一步是在確認方向沒抓錯,如果整組關掉還是壞的,就代表問題可能不在這一類,要回頭重新用主控台判斷一次。
第二步,搭配上一節提到的繞過參數,打開瀏覽器開發者工具的 Network 分頁,列出頁面實際載入的所有 CSS 或 JavaScript 檔案清單,這是關掉最佳化功能之後、頁面本來應該要載入的完整檔案名單。LiteSpeed 官方文件「Find and Exclude the Problematic File(s)」段落教的正是這套做法:先取得原始檔案清單,把整份清單一次全部加進排除欄位,重新啟用最佳化功能並清除快取測試,確認版面恢復正常。
第三步,也是最花時間但最準確的一步:把排除清單裡的項目逐一移除,每移除一個就清一次快取、重新整理測一次,直到版面又壞掉為止,代表剛移除的那一個檔案就是真正造成衝突的兇手,要把它放回排除清單裡,其他項目可以留在最佳化的處理範圍內,不必因為抓不到兇手就把整批檔案都排除在外。這套逐一測試的方法比較花時間,換來的是精準的排除清單:只排除真正有問題的那幾個檔案,其他檔案照樣享有最佳化帶來的載入速度,不會因為找不到兇手就把整個資料夾一律排除。
WP Rocket 的排除欄位設定,不必整個關掉快取
使用 WP Rocket 的讀者,官方提供了兩層排除機制,先試內建的一鍵排除快捷選項,行不通再自己找出正確的檔案路徑填進自訂欄位。多數 Elementor 相容性問題,第一層就能解決,不必因為單一衝突就整個關掉 Delay JavaScript execution(延遲載入 JavaScript)或 Minify JavaScript files(壓縮 JavaScript 檔案)這類功能,犧牲掉整站的最佳化效果。
兩層排除機制的順序很明確,先試一鍵排除,沒解決再往自訂欄位查。
Delay JavaScript execution 底下的一鍵排除清單
如果版面問題是在啟用 Delay JavaScript execution 這項功能之後才出現,可以先試 WP Rocket 的 File Optimization(檔案最佳化)設定頁面裡的 One-click exclusions(一鍵排除)區塊,針對常見外掛,包括 Elementor,預先包好對應的排除選項,直接勾選 Elementor 相關項目、存檔即可生效,不必自己動手找檔案路徑。
這一招是修復多數 Elementor 與 Delay JavaScript 衝突的第一步,應該優先嘗試。WP Rocket 官方文件「Elementor and Delay JavaScript execution」段落也是這樣建議:如果 Delay JavaScript execution 功能延遲或打壞了 Elementor 模組的載入,先勾選 One-click exclusions 裡對應的項目,通常就足以修好版面跑掉、元素沒有立即載入的問題。勾選存檔之後記得清除快取、用無痕視窗重新整理確認,如果問題還在,才需要往下查自訂排除路徑。
自訂排除路徑要從主控台錯誤訊息回頭找檔案
一鍵排除沒涵蓋到的情況,就要自己找出正確的檔案網址,填進 Excluded JavaScript files(排除的 JavaScript 檔案)欄位。做法是從報錯的地方開始,一路回推到原始檔案:先在瀏覽器開發者工具的 Console 分頁,找到紅色的錯誤指示,點開看是哪一個檔案、哪一段程式碼出錯,複製一小段有特徵的字串;接著用前面提到的繞過參數 ?nowprocket 載入未經過壓縮合併的原始版本;再用開發者工具裡的 Search All Files(搜尋所有檔案)功能搜尋剛才複製的那段字串,定位出它原本所在的檔案;切到 Network 分頁重新整理,在請求清單裡找到這個檔案,右鍵複製它的連結網址;最後把這個網址貼進 File Optimization 分頁的 Excluded JavaScript Files 欄位,存檔、清除快取,回頭確認 Console 不再報錯。
填單一檔案排除時,要用相對路徑,並且去掉網址結尾的版本查詢字串,例如寫成 /wp-content/plugins/elementor-pro/assets/js/frontend.min.js,而不是帶著 ?ver= 版本號參數的完整網址,因為版本號會隨外掛更新而改變,帶著它填反而容易在下次更新後失效。如果同一個資料夾底下有好幾個檔案都需要排除,可以改用萬用字元一次涵蓋,例如寫成 /wp-content/plugins/my-plugin/assets/js/(.*).js 這種寫法,就不必逐一列出每一個檔案。另外,如果衝突的是 Elementor Pro 的黏頂效果被 Load JavaScript deferred 功能打壞,WP Rocket 官方文件直接給出現成的正規表示式排除寫法,\/jquery(-migrate)?-?([0-9.]+)?(.min|.slim|.slim.min)?.js(\?(.*))?( |'|"|>|$),以及 /elementor-pro/assets/lib/sticky/jquery.sticky.min.js 這一條,兩條規則要一起加進排除欄位;如果同時也開著 Delay JavaScript Execution 功能,同樣的排除規則也要重複加進那個功能自己的排除欄位裡,兩邊都要填才會完整生效。
LiteSpeed Cache 用 Tuning 頁籤排除 Elementor 檔案
LiteSpeed Cache 排除設定的位置跟語法邏輯,跟 WP Rocket 不太一樣。WP Rocket 的排除欄位擺在 File Optimization 頁面裡,LiteSpeed Cache 則是獨立出一個 Tuning(調校)頁籤:CSS 相關的排除欄位在 Page Optimization 底下的 Tuning – CSS,JavaScript 相關的排除欄位在 Tuning 頁籤本身。兩個欄位都支援用部分字串比對的寫法,一次排除整個資料夾底下的相關檔案,不必像列清單一樣一個檔案一個檔案慢慢填。
CSS Excludes 與 JS Excludes 的部分字串寫法
CSS Excludes 與 JS Excludes 兩個欄位都是一行填一條規則,可以填完整檔名,例如 elementor-builder.css,只會排除這一個檔案;也可以只填一部分字串,例如單獨填 elementor,就會排除檔名裡含有這個字串的所有檔案,這種寫法更省事,能一次排掉整個外掛底下相關的檔案,不需要逐一列出每一個檔案名稱。官方教學也特別提到,使用 Elementor 這類頁面建構工具時,可能需要把整個 elementor/assets/js 資料夾排除,才能確保頁面需要用到的 JavaScript 檔案能正常載入,避免啟用 UCSS(未使用 CSS 移除)或 Delay JS(延遲載入 JavaScript)之後網站直接跑版。
完整檔名跟部分字串兩種寫法各有取捨:完整檔名精準,但外掛版本更新、檔案改名之後就要跟著手動維護;部分字串一次涵蓋整包外掛的相關檔案,維護起來省事,但範圍要抓對,抓太寬會連不該排除的檔案也一併排除在最佳化之外,等於白白損失掉一部分本來能享有的效能提升。LiteSpeed 官方文件「Test the List」段落建議的做法,是先把整份候選清單都填進去排除,確認版面正常之後,再逐一移除清單裡的項目測試,找出真正需要留在排除清單裡的那一個或幾個檔案,而不是一開始就用過寬的字串把一大片檔案都排掉。
UCSS File Excludes 專治語法錯誤造成的排版跑掉
如果畫面顯示 Critical CSS 或 UCSS(未使用 CSS 移除)產生失敗、或排版持續跑掉,通常代表某個原始 CSS 檔案本身有語法錯誤,這種情況跟前面講的合併壓縮衝突是不同的成因,排除的方法也不一樣。UCSS File Excludes and Inline(UCSS 檔案排除與內嵌)欄位位在 Page Optimization 底下的 Tuning – CSS 頁籤。
LiteSpeed 官方文件在「Debug Critical CSS Generation」與「UCSS Not Generating」段落給出具體的除錯流程:先檢查產生出來的 CCSS 檔案內容裡有沒有出現 Syntax Error 字樣,如果有,代表某個外掛或主題自己的原始 CSS 檔案寫錯了語法,不是 LiteSpeed 本身的問題。接著關閉 CSS Combine(合併)與 Minify(壓縮),清除快取後重新產生一次 CCSS,這時候產生出來的檔案裡就能看到真正出錯的原始檔案路徑。找到之後有兩條路可走:直接修正該檔案裡的語法錯誤,或是在 UCSS File Excludes and Inline 欄位把這個檔案排除掉,再重新產生一次 UCSS。排除它不會連帶影響其他正常運作的檔案,因為問題只出在那一個檔案本身的語法,不是最佳化功能的邏輯錯誤。
W3 Total Cache 和 Breeze,排除欄位的填法邏輯相通
W3 Total Cache 和 Breeze 這兩款快取外掛的市佔率不如 WP Rocket 與 LiteSpeed Cache 高,但排除邏輯是同一套,把會被最佳化功能打壞的 Elementor 檔案路徑,填進不要處理的名單裡。差別在於兩款外掛的欄位支不支援萬用字元,W3 Total Cache 只能一行一個相對路徑逐一列出,Breeze 則支援萬用字元一次涵蓋整個資料夾。不管手上裝的是哪一款,都能套用前面幾節教的同一套判斷邏輯:先用排除法找出真正的檔案,再依各自欄位的語法規則填進去,存檔清快取驗證。
W3 Total Cache 的 Never Minify 清單
W3 Total Cache 的排除設定在 Performance(效能)底下的 Minify(壓縮)頁面,設定項目叫 Never Minify The Following Files(絕不壓縮以下檔案)。JavaScript 與 CSS 各自有獨立欄位,只能填相對路徑,一行一個,範例格式類似 /wp-content/plugins/elementor-pro/assets/js/frontend.min.js 這樣的寫法。
該外掛現由 BoldGrid 維護,官方支援文件明確說明這個欄位不支援用正規表示式在同一個資料夾裡一次排除多個檔案,這一點跟前面 LiteSpeed 的部分字串比對、或 WP Rocket 的萬用字元寫法都不一樣,代表用 W3 Total Cache 的讀者,找到幾個要排除的檔案,就得老老實實列出幾行,外掛升級後檔案名稱如果變了,也要記得回頭更新這份清單。設定填完之後要存檔,並且清除快取,兩個步驟缺一個都不會看到效果。
Breeze 的 Exclude CSS、JS 與萬用字元寫法
Breeze(Cloudways 開發的快取外掛)的 Exclude JS 與 Exclude CSS 欄位支援萬用字元 (.*) 比對,可以用網址片段或副檔名排除特定類型的檔案,一條規則就能涵蓋一整個資料夾底下所有 Elementor 相關檔案,不必像 W3 Total Cache 那樣逐一列出每一個檔案名稱,設定上相對省事。
Breeze 官方在 WordPress.org 外掛頁面的版本更新紀錄裡,持續出現跟 Elementor 快取清除沒同步相關的修正項目,包括修正快取清除的問題、以及在頁面快取被清除之後同步清除物件快取等多筆紀錄。這代表 Breeze 跟 Elementor 之間的相容性,是官方持續在補強的項目,不是設一次排除清單就永久有效,外掛升級之後,最好重新測一次版面,確認舊有的排除規則在新版本裡依然有效,沒有因為外掛內部邏輯調整而失去作用。

Elementor 效能實驗功能,跟外部快取衝突時該先關掉的幾項
前面幾節處理的都是快取外掛這一側的最佳化功能,問題的另一個源頭,有時候出在 Elementor 自己這一側。Editor 設定裡 Ongoing Experiments(進行中的實驗功能)底下,有幾項效能相關的實驗功能,跟外部快取外掛疊加起來會出現衝突。先確認自己有沒有開這些功能,衝突發生時該先關哪幾項、各自的理由是什麼,而不是見一個關一個。
WP Rocket 官方文件「Elementor Performance features and experiments」段落明確建議,使用 WP Rocket 時應該關閉 Elementor Editor 設定裡 Performance 底下的三項功能:Optimized Image Loading(最佳化圖片載入)、Lazy Load Background Images(背景圖片延遲載入)、Element Cache(元素快取)。三項各有各的理由:Optimized Image Loading 目前不支援排除被第三方外掛延遲載入的圖片,跟 WP Rocket 自己的圖片最佳化功能疊在一起容易互相干擾;Lazy Load Background Images 跟 Optimized Image Loading 類似,WP Rocket 本身已經內建 LazyLoad 與 CSS 背景圖片的延遲載入功能,兩邊同時開等於重複做同一件事,容易疊加出問題;Element Cache 可能讓頁面上的小工具顯示不正確的內容,因為 WP Rocket 本身已經在處理整頁快取,兩層快取疊在一起反而容易讓某個小工具停留在舊版內容沒更新。
另一項要留意的是 Improved Asset Loading(強化資源載入),這是 Elementor 從 3.1 版開始提供的效能實驗功能,機制是讓每個小工具的 JavaScript 只在頁面真的用到那個小工具時才動態載入,不像過去那樣不管頁面有沒有用到都預先全部載入,這個機制本身能有效減少頁面載入的程式碼量。問題在於,快取外掛的移除未使用 CSS、產生關鍵路徑 CSS 這類功能,判斷這段程式碼有沒有用到的邏輯,跟 Elementor 動態載入的時機點可能對不上,兩者疊加容易誤判某段 CSS 或 JavaScript 沒有用到,結果該載入的東西沒被載入進來,版面因此跑掉。開啟或關閉 Improved Asset Loading 這類實驗功能,前後都要在無痕視窗完整測試一次版面,確認沒有因為切換這項設定而產生新的衝突。
排除清單設好後,確認是真的修好還是巧合
排除清單設定完,重新整理一次看起來正常,不代表問題真的解決了,這是收尾最容易被跳過的一步。快取外掛存在的意義就是讓同一個版本的內容被重複使用,第一次重新整理看到的畫面,很可能是快取正在重新產生過程中的暫時狀態,不是真正命中快取之後的最終結果。
正確的驗證流程,是依序清除所有快取層:快取外掛本身的快取、伺服器端快取(如果主機有提供)、CDN 快取、瀏覽器快取,四層任何一層沒清乾淨,都可能還看到舊版本的畫面,誤以為排除清單沒設對。清乾淨之後,改用無痕視窗重新整理至少兩次,第一次載入時快取可能正在重新產生,畫面暫時顯示異常不代表沒修好,要看的是第二次,也就是真正命中新版快取之後的結果。這時候再打開一次 Console,確認先前的錯誤訊息沒有再出現,同時手機版跟桌機版都各測一次,因為前面提到的第三種故障,也就是斷點相關的問題,只在特定裝置寬度下才會出現,只測桌機容易漏掉。
最後一件事,是把「設定過一次」和「永遠有效」分開來看。LiteSpeed 官方文件多處都強調改完設定要重新清快取測試,理由是合併後的檔名會隨著內容變化而改變,快取本來就需要重新產生才會反映最新的排除設定。Breeze 官方外掛頁面的版本更新紀錄,橫跨多個版本持續修正跟 Elementor 相容的快取清除問題,也印證了同一件事,這類相容性問題會隨著外掛版本更新持續變動。Elementor 或快取外掛任何一方更新版本之後,原本設好的排除清單都可能因為檔案路徑或版本查詢字串改變而失效,比較保險的做法是更新之後重新照著同一套判斷邏輯走一次:先分清楚是 CSS 還是 JavaScript 的問題,再回頭確認排除清單還對不對,而不是假設設定過一次就能永遠不用再管。
快取外掛帶來的速度提升是真實的,不需要因為一次衝突就整個關掉它。真正該做的,是找出哪一個檔案、哪一個功能是問題所在,把排除範圍縮到最小,讓其餘的最佳化功能繼續正常運作。從主控台判斷是 CSS 還是 JavaScript 問題開始,一路查到某個具體的檔案路徑,同樣的邏輯換成任何一款頁面建構工具遇到類似的版面異常,一樣查得出來。
