Publish eight services with blue design, local SEO and enquiry safeguards - #4
Merged
Merged
Conversation
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (85)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Local SEO, eight public services and preserved blue website design
Adds an eight-service patient journey with consistent metadata, canonical URLs, clinic structured data, sitemap/indexing controls and protected synchronous enquiry delivery. Preserves the restored original layouts, typography, image compositions and current blue palette.
Physiotherapy imagery
Seven coordinated generated illustrations replace the three repeatedly used treatment photos, with distinct homepage scenes and relevant per-page selections. Existing blue styling, arched/rounded containers and animations are preserved. Captions/alt text identify illustrations; generated people and rooms are not used as practitioner portraits or clinic identity images.
Responsive WebP variants (480/768/1200px), intrinsic dimensions, lazy below-fold loading, a matched responsive hero preload and per-page social metadata are configuration-driven. All seven 480px files total 111 KB; all 21 variants total 728 KB. Existing recursive image deployment is covered by an expanded preflight/copy test. IMAGE-ASSETS.md documents the audit, prompts, regeneration decisions and usage map.
Current validation: 111 PHP tests / 1365 assertions, 4 JavaScript tests, Pint, PHPStan, production build, shell syntax and diff checks pass. All 13 public pages checked at desktop/mobile widths; final source anatomy and rendered crops inspected, homepage lazy loading/reveals verified, no broken visible images or horizontal overflow observed. Production assets rebuilt with identical CSS/JS output. Motion-preference behaviour is automated-test covered; actual OS preference/high-DPR hardware emulation was unavailable. No merge or deployment.
Testimonials
Adds “What our patients say” after the treatment images and before About: three desktop cards, stacked mobile cards, existing blue/serif/rounded styling and gentle scroll-reveal stagger. The user subsequently confirmed the screenshot quotations are genuine and permitted for publication. The three top-row quotes from Sarah M., Priya N. and Lerato K. now populate the cards verbatim; no star ratings are displayed.
The supplied quotes now replace samples in every environment. Three labelled neutral samples remain only as a local/staging fallback when there are no approved entries. Production renders only complete, explicitly approved genuine entries and omits the entire section when empty. Samples live in a separate configuration list and cannot be published by toggling their approval flag. Optional source links require a valid supplied HTTP(S) URL. No Review/aggregate-rating schema or external widget. CONTENT-TODO.md documents where to enter quotes, permitted display names, source URLs and approval.
Testimonial-specific validation before the imagery update: 109 PHP tests / 1049 assertions, 4 JavaScript tests, Pint, PHPStan, production build, shell syntax and diff checks pass. Desktop/mobile browser verified three/one columns, spacing, no overflow and scroll-triggered 0/90/180ms entrances. Production sample exclusion, confirmed quote rendering/order, escaping and source-link checks are automated. No source URLs were supplied; no links are invented. Existing reduced-motion tests/CSS apply; actual browser motion-preference emulation remains unavailable. Assets rebuilt. No merge or deployment.
Animation and content refinement
Verified reference
42880b2and compared its JS/CSS/Blade. Restored disconnected 30px/850ms scroll entrances and 0/90/180/270ms service-card staggers; applied consistent entrances to internal content. Content stays visible before observation or if JavaScript fails. Existing hover, drift, header and mobile-navigation interactions remain; parallax now responds to reduced-motion and mobile changes. The approved static illustration strip remains unchanged instead of restoring the removed carousel.Rewrote all eight services around distinct patient questions, assessment focus, care and follow-up. Removed repeated service-page administration in favour of Patient Information, added relevant related links to the original three services, and separated homepage practitioner/first-visit/location/appointment content. Clinical background uses NHS/CSP sources; references and their limits are recorded in SEO-REVIEW.md. Practice-specific facts remain those supplied by the user.
Public content and optional information
config/site.php.CONTENT-TODO.mdlists every key, what to supply, its eventual location, confirmed facts and external release tasks.Preserved safeguards
The website Basic Auth gate and unused credentials/configuration are removed. Local and staging pages open anonymously while staying noindex, with crawling disallowed and an empty sitemap. Staging is accessible to anyone with its URL; noindex is not access protection. Deployment-token authentication is unchanged. Publication gating remains available if a page is disabled later. The verified location gate, canonical configuration, synchronous mail, replay protection, generic analytics deduplication and production deployment preflight remain intact.
The original design was restored from Git reference
42880b2; backup branchbackup/seo-before-layout-restoration-2026-09-14preserves the earlier SEO work. The central blue theme retains accessible text and focus states. Unsupported testimonials, credentials and unconfirmed promotional claims were not restored.Validation
95 PHP tests / 953 assertions and 4 JavaScript tests pass, plus Pint, PHPStan, production asset build, shell syntax and diff checks. Browser scrolled all 13 pages at 390px and 1440px: no overflow, one H1 each, eligible reveals triggered. Verified card hover/lift, header/parallax, service navigation and mobile toggle/Escape/focus/link-close. With scripts blocked in the temporary loopback QA transport, all pages remained readable at both widths. Assets rebuilt; fake/mocked mail only.
Reduced-motion and missing/throwing observer paths have automated coverage, with reduced-motion CSS retained. The browser tool cannot emulate OS motion preference, so an actual reduced-motion browser session remains a manual verification limitation. The Livewire form still requires JavaScript; no-JS checks cover content and links. No hosted staging/production testing, merge or deployment.
Remaining release work
Optional content is tracked in
CONTENT-TODO.md; it is not a release blocker. Valourite still needs to verify server environment overrides, effective cached production indexing/canonical settings, recipients and contact/location values, and obtain Google-account access for external listing/Search Console work. Existing preflight checks an in-place deployment; it does not provide an atomic release or automatic rollback. Cache-based deduplication does not guarantee exactly-once email delivery. Existing dependency-audit follow-up remains open.No merge, deployment, live enquiry, production-setting change or Google-account modification.
Summary by CodeRabbit
New Features
Improvements
SEO & Accessibility