Files
2026-04-11 00:37:12 +02:00

121 lines
4.9 KiB
Markdown

---
phase: 01-acf-migration-2707
plan: 01
subsystem: ui
tags: [wordpress, acf, flexible-content, php, migration]
requires:
- phase: none
provides: n/a
provides:
- ACF Flexible Content integration for page 2707
- collaboration_steps ACF layout (reusable)
- Migration script pattern for future pages
affects: [02-acf-migration-2598, 03-acf-migration-2101]
tech-stack:
added: []
patterns: [acf-flexible-content-migration, one-time-php-migration-script]
key-files:
created:
- wp-content/themes/ostal_WP/template-parts/sections/section-collaboration-steps.php
- wp-content/themes/ostal_WP/migrate-2707.php
modified:
- wp-content/themes/ostal_WP/sections.php
- wp-content/themes/ostal_WP/page-2707.php
- wp-content/themes/ostal_WP/template-parts/sections/section-hero-with-form.php
- wp-content/themes/ostal_WP/css/custom.css
- wp-content/themes/ostal_WP/acf-json/group_6494221367141.json
key-decisions:
- "Hero text field: changed <p> to <div> wrapper to support multi-paragraph WYSIWYG content"
- "Migration approach: one-time PHP script using update_field() instead of manual WP admin entry"
- "ACF JSON: added collaboration_steps layout directly to JSON sync file"
patterns-established:
- "ACF migration: create migrate-XXXX.php script with safety checks, run once, delete after"
- "New layouts: add to both sections.php dispatcher AND acf-json group file"
duration: ~45min
started: 2026-04-11
completed: 2026-04-11
---
# Phase 1 Plan 01: ACF Migration page-2707 Summary
**Migrated hardcoded "Ogrody zimowe" page (2707) to ACF Flexible Content with 10 layouts and auto-populated content via migration script.**
## Acceptance Criteria Results
| Criterion | Status | Notes |
|-----------|--------|-------|
| AC-1: Flexible Content dispatcher complete | Pass | 3 new layouts added to sections.php (hero_with_form, gallery, collaboration_steps) |
| AC-2: Collaboration steps layout works | Pass | New partial renders numbered steps with repeater, hover effects, responsive CSS |
| AC-3: Page 2707 uses Flexible Content | Pass | Page reduced to 3 lines (header + sections + footer) |
| AC-4: Migration script populates content | Pass | All 10 layouts populated programmatically, user verified |
## Accomplishments
- Page 2707 fully editable from WP admin (10 ACF Flexible Content layouts)
- New reusable `collaboration_steps` layout with ACF field group definition in JSON
- Migration script pattern established for future page migrations (2598, 2101)
## Files Created/Modified
| File | Change | Purpose |
|------|--------|---------|
| `sections.php` | Modified | Added 3 layout dispatchers (hero_with_form, gallery, collaboration_steps) |
| `page-2707.php` | Modified | Replaced ~225 lines of hardcoded content with 3-line Flexible Content loader |
| `section-collaboration-steps.php` | Created | New partial for numbered cooperation steps with repeater |
| `migrate-2707.php` | Created | One-time migration script populating all 10 layouts (TO DELETE) |
| `section-hero-with-form.php` | Modified | Changed `<p>` to `<div>` for multi-paragraph WYSIWYG support |
| `custom.css` | Modified | Added darker gradient overlay on hero for page 2707 |
| `group_6494221367141.json` | Modified | Added collaboration_steps layout definition to ACF JSON sync |
## Deviations from Plan
### Summary
| Type | Count | Impact |
|------|-------|--------|
| Auto-fixed | 3 | Essential fixes for visual fidelity |
| Deferred | 0 | — |
### Auto-fixed Issues
**1. Hero text rendering broken (nested `<p>` tags)**
- Found during: Checkpoint verification
- Issue: Template wrapped text in `<p>`, WYSIWYG content also had `<p>` tags — browsers broke layout
- Fix: Changed `<p class="hero-text">` to `<div class="hero-text">` in section-hero-with-form.php
- Verification: User confirmed hero displays correctly
**2. Hero background too bright for text readability**
- Found during: Checkpoint verification
- Issue: White text on light background image had poor contrast
- Fix: Added `body.page-id-2707 .hero-with-form .bg-filter` rule with darker gradient (55% → 25% opacity)
- Verification: User confirmed "Jest ok"
**3. Layout 3 column order incorrect**
- Found during: Checkpoint verification
- Issue: "Co wyróżnia" section had image-left layout, user wanted text-left/image-right
- Fix: Removed `imageLeft` class from layout 3 in migration script
- Verification: User confirmed correct order
## Next Phase Readiness
**Ready:**
- Migration pattern proven — same approach applies to page-2598 and page-2101
- All existing ACF layouts verified working (two_col, two_col_with_bg, hero_with_form, gallery)
- collaboration_steps layout reusable for page-2598 (which has identical section)
**Concerns:**
- `migrate-2707.php` must be deleted from server after verification (security risk)
- Gallery images require attachment IDs — if images aren't in Media Library, they won't appear
**Blockers:** None
---
*Phase: 01-acf-migration-2707, Plan: 01*
*Completed: 2026-04-11*