Community코딩 & 개발github.com

ecomyseo/velocidad-prestashop

Precisamente mida y mejore la velocidad de una tienda PrestaShop (1.7, 8 y 9) y de su servidor sin romper nada. Copia de seguridad y reversión antes de cada cambio, medición antes y después con navegador real (móvil en 4G), imágenes WebP (núcleo, plantilla, banners y CMS), recursos que bloquean el pintado (fuentes, iconos, jQuery, reCAPTCHA), caché del navegador, ajustes del servidor (OPcache, MariaDB, PHP-FPM, sesiones, DNS) y módulos de terceros.

velocidad-prestashop란 무엇인가요?

이 스킬은 실제 매장에서 측정하고 적용한 내용을 바탕으로 PrestaShop 온라인 스토어의 성능을 안전하게 개선하는 시스템적인 접근 방식을 제공합니다. 1.7, 8, 9 버전을 지원하며, 변경 전 반드시 백업과 자동 복원 스크립트를 생성하고, 모든 개선 사항을 모바일 4G 환경에서 Playwright를 사용하여 측정 전후를 비교합니다. 주요 개선 영역으로는 WebP 이미지 변환(제품 사진, 템플릿, 배너, CMS), 렌더링 차단 리소스 제거(폰트, 아이콘, jQuery, reCAPTCHA), 브라우저 캐싱, 서버 최적화(OPcache, MariaDB, PHP-FPM, 세션, DNS) 및 타사 모듈 감사를 다룹니다. 각 변경 사항이 실제로 성능에 긍정적인 영향을 미치는지 검증하기 위해 A/B 테스트를 수행하며, 변경 사항이 스토어 기능(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에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

Velocidad en PrestaShop sin romper nada

Este skill reúne lo que se ha medido y aplicado en tiendas PrestaShop reales: qué mejora de verdad, en qué orden conviene hacerlo y en qué se tropieza. Todo está anonimizado.

Las reglas que no se saltan

  1. Copia de seguridad antes de cada cambio. De cada fichero que se toca, de las filas de configuración que se cambian y de la configuración del servidor. Y un volver.sh que deshaga ese cambio concreto. Detalle en referencias/01-metodo-seguro.md.
  2. Medir antes y después, con el mismo método. Sin una medida de partida no se puede decir que algo ha mejorado. El método está en referencias/02-medir.md y la herramienta en scripts/medir.py.
  3. Un cambio cada vez, y probarlo activando y desactivando. Para saber si una opción ayuda se mide con ella y sin ella, alternando (A, B, A, B) y con varias cargas. Si no mejora, se deshace.
  4. Nada en producción sin el permiso del dueño de la tienda, diciendo antes qué se va a tocar. Si hay una copia de la tienda, se prueba primero allí.
  5. Comprobar el final, no solo el principio. Mismos códigos HTTP que antes en las páginas clave, cero errores de JavaScript nuevos (los que ya había no cuentan, pero se apuntan), imágenes que cargan, y carrito y checkout que funcionan.
  6. Avisar de cada cambio: qué se ha tocado, dónde está la copia, cómo se deshace y qué se ha medido.

Orden de trabajo, de más rentable a menos

PasoQuéReferencia
1Medir la situación de partida (móvil 4G, primera y segunda visita)referencias/02-medir.md
2Imágenes: WebP en fotos de producto, en la plantilla y en banners/CMSreferencias/03-imagenes-webp.md
3Recursos que bloquean el pintado: fuentes, iconos, jQuery, reCAPTCHA, CCCreferencias/04-bloqueos.md
4Caché del navegador para los estáticosreferencias/05-cache-navegador.md
5Servidor: OPcache, MariaDB, PHP-FPM, sesiones, DNS, CPUreferencias/06-servidor.md
6Módulos de terceros que llaman fuera o bloqueanreferencias/07-modulos-terceros.md
—Trampas ya pisadas (leer antes de empezar)referencias/08-trampas.md

Lo que más pesa casi siempre son las imágenes: banners en PNG de 2 a 5 MB son habituales. En una tienda la portada pasó de 26,5 MB a 4,8 MB solo con WebP en los banners, sin tocar ninguna imagen original.

Herramientas

ScriptPara qué
scripts/medir.pyNavegador real (Playwright) en móvil con 4G lenta y CPU ×4: FCP, LCP, carga, KB, peticiones, recursos que bloquean, lo más pesado y errores de JavaScript, en primera y segunda visita.
scripts/revisar_cache.pyCuánto tiempo guarda el navegador los CSS, JS, imágenes y fuentes de una web, y que las páginas y el JSON no se guarden. Solo lectura.
scripts/webp_al_lado.pyCrea imagen.png.webp junto a cada imagen de una carpeta (sin tocar la original), solo si pesa al menos un 10 % menos. Deja un registro para deshacerlo.

Plantillas de configuración listas para adaptar en plantillas/: negociación de WebP en nginx y en Apache, bloque de caché del navegador seguro para .htaccess, el parcial Smarty que pide el WebP solo si existe y un modelo de aviso al desarrollador de un módulo.

Cómo informar al terminar

  • Qué se ha cambiado, web por web, con la cifra de antes y la de después.
  • Dónde está la copia y la orden exacta para deshacerlo.
  • Qué queda pendiente y qué decisión le toca al dueño de la tienda.
  • Lo que se ha visto de paso y no se ha tocado (errores que ya estaban, módulos sospechosos).

관련 스킬