feat(theme): About, Contact, FAQ, blog list and post pages from new front

- Route pages by address to theme templates (about-us, contact-us, faq, blogs, posts)
- Scoped design CSS (pages.css) + Astra/WordPress fixes (pages-wp.css), page JS
- Contact form emails the new Settings -> Viator Collector -> Contact email
  (fallback: admin email), Reply-To the visitor, honeypot spam trap
- Blog list shows real posts with search, sort and paging; posts use the
  article design with comments as reviews and related articles
- Design images converted to WebP (~15MB PNG -> ~1MB)
- Theme 1.0.10, plugin 1.9.1

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-29 16:20:11 +03:30
parent 930b7e0534
commit f58ed49d07
30 changed files with 5932 additions and 14 deletions

View File

@@ -50,6 +50,28 @@ styles the page content (listing / single / homepage sections).
add_filter( 'hoho_support_url', fn() => 'https://example.com/contact' );
```
## Design pages (About, Contact, FAQ, Blog)
`inc/pages.php` gives these pages the "new front" designs automatically, by
address — no page template to pick:
| Design | Used on | Template |
|---|---|---|
| About | page `about-us` (or `about`) | `templates/about.php` |
| Contact | page `contact-us` (or `contact`) | `templates/contact.php` |
| FAQ | page `faq` (or `faqs`) | `templates/faq.php` |
| Blog list | the Posts page, or page `blogs` / `blog` | `templates/blog.php` |
| Blog post | every single post | `templates/post.php` |
- About/FAQ/Contact text is fixed in the templates (edit the files to change it).
- The contact form emails **Settings → Viator Collector → Contact email**
(falls back to the site admin email), with the visitor as Reply-To.
- Blog list search/sort/paging use `?q=`, `?sort=` and `?pg=`; post "Review's"
are WordPress comments.
- Styles: `assets/pages.css` is generated — rebuild after changing the design CSS:
`VC_SCOPE='.hoho-page.hoho-page' node viator-collector/build/scope-css.js "new front/css/style.css" astra-child-hoponhopoff/assets/pages.css`.
WordPress-specific fixes live in `assets/pages-wp.css`.
## Header behavior
The header is **transparent and overlays a full-bleed hero** (homepage, and the