Community程式設計與開發github.com

ecomyseo/velocidad-prestashop

測量並改善 PrestaShop 商店(1.7、8 和 9 版)及其伺服器的速度,不破壞任何功能。每次變更前自動備份並可復原,使用真實瀏覽器(4G 行動網路)進行前後測量,支援 WebP 圖片、阻擋渲染的資源、瀏覽器快取、伺服器設定最佳化等。

velocidad-prestashop 是什麼?

本技能專為 PrestaShop 商店開發者與管理者設計,提供一套系統性、非破壞性的網站效能最佳化方法。其核心原則是:每次變更前自動備份並提供復原腳本(`volver.sh`),使用真實瀏覽器(Playwright 模擬 4G 行動網路與 CPU 節流)進行可重複的前後測量(FCP、LCP、頁面載入大小、請求數等),並一次僅套用一項變更,透過 A/B 測試驗證其效益。 技能涵蓋六大最佳化步驟,按效益高低排序:圖片轉 WebP(產品照、模板、橫幅與 CMS 內容)、消除阻塞渲染的資源(字型、圖示、jQuery、reCAPTCHA、CCC)、設定瀏覽器快取、調整伺服器設定(OPcache、MariaDB、PHP-FPM、session、DNS、CPU)、以及審查第三方模組。支援 PrestaShop 1.7、8 與 9 版,提供多個實用腳本(`medir.py`、`revisar_cache.py`、`webp_al_lado.py`)與設定範本(Nginx、Apache、Smarty partial)。 所有工具與方法均來自真實商店的實戰經驗,並經過匿名化處理。技能特別強調安全:絕對不直接修改生產環境,變更前須取得商店擁有者許可,且變更後需檢查關鍵頁面的 HTTP 狀態碼、JavaScript 錯誤、圖片載入與購物車結帳功能是否正常。最後會生成一份完整的變更報告,包含前後數據、復原方式與待辦事項。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/ecomyseo/velocidad-prestashop/tree/HEAD/skill/velocidad-prestashop

Installed? Explore more 程式設計與開發 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

PrestaShop 速度最佳化,不破壞任何功能

本技能匯集了在真實 PrestaShop 商店中測量並應用的最佳實踐:哪些改進真正有效、按何種順序執行,以及會遇到哪些陷阱。所有資料皆已匿名化。

嚴格遵守的規則

  1. 每次變更前進行備份。 備份每個要修改的檔案、每項要變更的設定列以及伺服器設定。同時提供一個 volver.sh 腳本以回復該特定變更。詳情請見 referencias/01-metodo-seguro.md。
  2. 使用相同方法測量前後數據。 沒有起始數據,就無法斷言任何改進。測量方法說明於 referencias/02-medir.md,工具為 scripts/medir.py。
  3. 每次僅變更一項,並啟用/停用來測試。 為確認某項設定是否有幫助,需在有與無該設定的情況下交替測量(A、B、A、B),並進行多次載入。若無改善,則復原變更。
  4. 未經商店擁有者許可,不得在生產環境進行任何操作,並需事先說明要修改的內容。若有商店複本,應優先在此處測試。
  5. 檢查最終結果,而非僅看初始狀態。 關鍵頁面的 HTTP 狀態碼應與變更前相同、無新的 JavaScript 錯誤(原有錯誤不計,但需記錄)、圖片正常載入、購物車與結帳流程運作正常。
  6. 通報每次變更:說明修改了哪些內容、備份位置、如何復原以及測量結果。

工作順序,按效益高低排列

步驟內容參考文件
1測量起始狀態(4G 行動網路,首次與再次訪問)referencias/02-medir.md
2圖片:將產品照、模板圖片與橫幅/CMS 圖片轉為 WebP 格式referencias/03-imagenes-webp.md
3阻塞渲染的資源:字型、圖示、jQuery、reCAPTCHA、CCCreferencias/04-bloqueos.md
4靜態資源的瀏覽器快取referencias/05-cache-navegador.md
5伺服器:OPcache、MariaDB、PHP-FPM、session、DNS、CPUreferencias/06-servidor.md
6第三方模組:外部呼叫或阻塞渲染referencias/07-modulos-terceros.md
—已踩過的陷阱(開始前請先閱讀)referencias/08-trampas.md

最常見的瓶頸幾乎都是圖片:橫幅 PNG 檔案大小常達 2 到 5 MB。在某個商店中,僅將橫幅轉為 WebP 格式,首頁便從 26.5 MB 降至 4.8 MB,完全未動到原始圖片。

工具

腳本用途
scripts/medir.py使用真實瀏覽器(Playwright)模擬行動裝置,搭配低速 4G 網路與 CPU ×4 節流:測量 FCP、LCP、頁面載入大小、請求數、阻塞資源、最重資源及 JavaScript 錯誤,包含首次與再次訪問。
scripts/revisar_cache.py檢查瀏覽器對 CSS、JS、圖片與字型的快取時間,並確認頁面與 JSON 不被快取。僅讀取,不修改。
scripts/webp_al_lado.py在圖片所在資料夾中建立 imagen.png.webp 檔案(不修改原始圖片),僅在檔案大小至少減少 10% 時才建立。會留下記錄以便復原。

在 plantillas/ 目錄中提供可直接套用的設定範本:Nginx 與 Apache 的 WebP 協商、適用 .htaccess 的安全瀏覽器快取設定、僅在 WebP 檔案存在時才請求的 Smarty partial,以及提供給模組開發者的通知範本。

完成後的通報方式

  • 列出每個網站變更了哪些內容,並附上變更前後的數據。
  • 說明備份位置與確切的復原指令。
  • 說明遺留待辦事項,以及哪些決策需由商店擁有者決定。
  • 列出過程中發現但未修改的項目(如原有錯誤、可疑模組)。

相關技能