✨ Story 3.6: optimisation images
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
## Status
|
||||
|
||||
Ready for Dev
|
||||
In Progress
|
||||
|
||||
## Story
|
||||
|
||||
@@ -21,28 +21,28 @@ Ready for Dev
|
||||
|
||||
## Tasks / Subtasks
|
||||
|
||||
- [] **Task 1 : Organiser le dossier images** (AC: 1)
|
||||
- [] Créer `assets/img/projects/`
|
||||
- [] Définir la convention de nommage : `{slug}-{type}.{ext}`
|
||||
- [] Exemple : `ecommerce-xyz-thumb.webp`, `ecommerce-xyz-screen-1.webp`
|
||||
- [x] **Task 1 : Organiser le dossier images** (AC: 1)
|
||||
- [x] Créer `assets/img/projects/`
|
||||
- [x] Définir la convention de nommage : `{slug}-{type}.{ext}`
|
||||
- [x] Exemple : `ecommerce-xyz-thumb.webp`, `ecommerce-xyz-screen-1.webp`
|
||||
|
||||
- [] **Task 2 : Implémenter le lazy loading** (AC: 2)
|
||||
- [] Ajouter `loading="lazy"` sur toutes les images projets
|
||||
- [] Image principale above-the-fold sans lazy loading (false)
|
||||
- [x] **Task 2 : Implémenter le lazy loading** (AC: 2)
|
||||
- [x] Ajouter `loading="lazy"` sur toutes les images projets
|
||||
- [x] Image principale above-the-fold sans lazy loading (false)
|
||||
|
||||
- [] **Task 3 : Ajouter les dimensions explicites** (AC: 3)
|
||||
- [] Définir les tailles standards : thumbnail (400x225), screenshot (800x450), hero (1200x675)
|
||||
- [] Ajouter `width` et `height` sur toutes les `<img>`
|
||||
- [x] **Task 3 : Ajouter les dimensions explicites** (AC: 3)
|
||||
- [x] Définir les tailles standards : thumbnail (400x225), screenshot (800x450), hero (1200x675)
|
||||
- [x] Ajouter `width` et `height` sur toutes les `<img>`
|
||||
|
||||
- [] **Task 4 : Implémenter WebP avec fallback** (AC: 4)
|
||||
- [] Utiliser `<picture>` avec `<source type="image/webp">`
|
||||
- [] Fallback vers JPG
|
||||
- [x] **Task 4 : Implémenter WebP avec fallback** (AC: 4)
|
||||
- [x] Utiliser `<picture>` avec `<source type="image/webp">`
|
||||
- [x] Fallback vers JPG
|
||||
|
||||
- [] **Task 5 : Documenter les tailles recommandées** (AC: 5)
|
||||
- [] Thumbnails : 400x225, qualité 80%
|
||||
- [] Screenshots : 800x450, qualité 85%
|
||||
- [] Hero : 1200x675, qualité 85%
|
||||
- [] Documentation dans Dev Notes
|
||||
- [x] **Task 5 : Documenter les tailles recommandées** (AC: 5)
|
||||
- [x] Thumbnails : 400x225, qualité 80%
|
||||
- [x] Screenshots : 800x450, qualité 85%
|
||||
- [x] Hero : 1200x675, qualité 85%
|
||||
- [x] Documentation dans Dev Notes
|
||||
|
||||
- [ ] **Task 6 : Tester les performances** (AC: 6)
|
||||
- [ ] Audit Lighthouse sur la page projets (requiert images réelles)
|
||||
@@ -168,7 +168,7 @@ done
|
||||
## Dev Agent Record
|
||||
|
||||
### Agent Model Used
|
||||
Claude Opus 4.5 (claude-opus-4-5-20251101)
|
||||
GPT-5 Codex
|
||||
|
||||
### File List
|
||||
| File | Action | Description |
|
||||
@@ -176,6 +176,8 @@ Claude Opus 4.5 (claude-opus-4-5-20251101)
|
||||
| `includes/functions.php` | Modified | Ajout fonction projectImage() |
|
||||
| `templates/project-card.php` | Modified | Utilise projectImage() |
|
||||
| `pages/project-single.php` | Modified | Utilise projectImage() pour hero et galerie |
|
||||
| `tests/images.test.php` | Created | Tests helper image |
|
||||
| `tests/run.ps1` | Modified | Ajout tests image |
|
||||
|
||||
### Completion Notes
|
||||
- Fonction `projectImage()` créée avec support `<picture>` WebP + fallback JPG
|
||||
@@ -183,14 +185,15 @@ Claude Opus 4.5 (claude-opus-4-5-20251101)
|
||||
- Lazy loading activé par défaut, désactivé pour images above-the-fold
|
||||
- Fallback onerror vers default-project.svg
|
||||
- Templates mis à jour: project-card.php, project-single.php
|
||||
- Task 6 (Lighthouse) non testable sans images réelles
|
||||
- Tests: `powershell -ExecutionPolicy Bypass -File tests/run.ps1`
|
||||
- Task 6 (Lighthouse) à faire quand images réelles dispo
|
||||
|
||||
### Debug Log References
|
||||
Aucun problème rencontré.
|
||||
Aucun problème bloquant.
|
||||
|
||||
## Change Log
|
||||
|
||||
| Date | Version | Description | Author |
|
||||
|------|---------|-------------|--------|
|
||||
| 2026-01-22 | 0.1 | Création initiale | Sarah (PO) |
|
||||
| 2026-01-23 | 1.0 | Implémentation complète | James (Dev) |
|
||||
| 2026-02-04 | 1.0 | Implémentation partielle (sans Lighthouse) | Amelia |
|
||||
|
||||
Reference in New Issue
Block a user