Communityコーディング&開発github.com

ecomyseo/velocidad-prestashop

PrestaShop(1.7、8、9)ストアとサーバーの速度を測定・改善し、何も壊さないためのスキル。各変更前にバックアップとロールバック、実ブラウザ(モバイル4G)による事前・事後測定、WebP画像(コア、テンプレート、バナー、CMS)、ペイントブロックリソース(フォント、アイコン、jQuery、reCAPTCHA)、ブラウザキャッシュ、サーバー設定(OPcache、MariaDB、PHP-FPM、セッション、DNS)モジュール…

velocidad-prestashop とは?

このスキルは、実際のPrestaShopストアでの計測と適用に基づき、速度改善に本当に効果のある項目、実施すべき順序、よくある落とし穴をまとめたものです。すべて匿名化されています。画像(特にバナー)が最も負荷が大きく、PNGバナーが2〜5MBあるのは一般的で、WebP変換だけでトップページの転送量が26.5MBから4.8MBに減少した事例もあります。このスキルは、実ブラウザ(Playwright)を使いモバイル4G環境でFCP、LCP、総転送量、リクエスト数、ブロックリソース、JavaScriptエラーなどを測定するスクリプト、ブラウザキャッシュの有効期限を確認するスクリプト、元画像を変更せずに隣に.webpファイルを作成するスクリプトを提供します。すべての変更はバックアップとロールバック可能で、事前・事後測定とA/Bテストが必須であり、ストアオーナーの明示的な許可なしに本番環境で作業することはありません。

対応~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に質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

何も壊さない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、初回訪問と2回目訪問)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、セッション、DNS、CPUreferencias/06-servidor.md
6外部呼び出しやブロックを行うサードパーティモジュールreferencias/07-modulos-terceros.md
—すでに踏まれた落とし穴(開始前に読むこと)referencias/08-trampas.md

ほとんどの場合、最も重いのは画像です。2〜5MBのPNGバナーはよくあります。あるストアでは、バナーをWebPに変換するだけで、元の画像に一切触れずにトップページのサイズが26.5MBから4.8MBに減少しました。

ツール

スクリプト目的
scripts/medir.py実ブラウザ(Playwright)でモバイル、低速4G、CPU×4倍の環境で計測:FCP、LCP、読み込み時間、KB、リクエスト数、ブロックリソース、最大の要素、JavaScriptエラー(初回訪問と2回目訪問)
scripts/revisar_cache.pyウェブサイトのCSS、JS、画像、フォントがブラウザにどの程度キャッシュされるか、およびページとJSONがキャッシュされないことを確認する。読み取り専用。
scripts/webp_al_lado.pyフォルダ内の各画像の隣に imagen.png.webp を作成(元の画像は変更しない)。元のサイズより10%以上小さくなった場合のみ作成。元に戻すためのログを残す。

すぐに適応できる設定テンプレートを plantillas/ に用意:nginxとApache用のWebPネゴシエーション、.htaccess用の安全なブラウザキャッシュブロック、WebPが存在する場合のみ要求するSmartyパーシャル、モジュール開発者への通知テンプレート。

完了時の報告方法

  • ストアごとに何を変更したか、変更前と変更後の数値。
  • バックアップの場所と元に戻すための正確なコマンド。
  • 未完了の項目と、ストアオーナーが決定すべき内容。
  • 確認したが変更しなかったもの(既存のエラー、疑わしいモジュールなど)。

関連スキル