Flavor Starter Theme
A WordPress theme that doesn't just look good — it replaces half the plugins in your stack.
At a Glance
| Architecture | Domain-Driven Design (DDD) with custom database tables |
| Page Builder | Visual builder with 48 blocks across 5 categories |
| Templates | 29 React-based storefront templates |
| Modules | 38 built-in (12 stable + 25 beta) |
| Header/Footer | Visual drag-and-drop builder with presets |
| Translation | 260+ strings, database-stored, one-click Greek pack |
| Admin Tabs | 11 organized configuration tabs |
| Code Protection | ionCube-encoded licensing + Ed25519 integrity verification + distributed sentinels |
| Requirements | PHP 8.2+, WordPress 6.0+, Node.js 16+, ionCube Loader 14+ |
First Impressions
Installing Flavor is refreshingly simple. No "install these 5 required plugins" nag screen. The theme activates and you get a clean Theme Options panel organized into 11 tabs:
- Core — General settings, frontend language
- Theme — Appearance and layout
- Pages — Page assignments (including custom 404)
- Shop — eCommerce settings (when WP eCommerce Core is active)
- Optimize — Performance toggles
- Security — Security hardening
- Modules — Enable/disable all 38 modules
- Language — Translation management with search
- Debug — Development tools
- Tools — Module-specific tools
- License — License management
Everything in one place. No hunting through five different menu items or figuring out which plugin controls what.
DDD Foundation
Flavor Starter implements a full Domain-Driven Design infrastructure layer — the same architectural discipline that powers WP eCommerce Core. This is a complete rethinking of how a WordPress theme manages data.
Custom Database Tables
Instead of dumping everything into WordPress's wp_options table, Flavor owns its data in dedicated custom tables:
| Table | Purpose |
|---|---|
{prefix}flavor_options | Theme settings and module configuration (key-value rows with autoload and groups) |
{prefix}flavor_cache | Theme cache store (replaces WordPress transients — with TTL, groups, garbage collection) |
{prefix}flavor_migrations | Database migration tracking |
Infrastructure Components
| Component | What It Does |
|---|---|
| Flavor_Container | Dependency Injection container — services registered once, resolved anywhere |
| Bootstrap | Singleton that boots the DDD layer at after_setup_theme priority 5 |
| Migrator | File-based database migration system (like Laravel) |
| OptionsRepository | Custom options store with autoload cache and groups |
| CacheRepository | Custom cache store with TTL and groups |
Data Sovereignty
Every theme setting, module configuration, and cache entry lives in Flavor's custom tables — never in wp_options. This is enforced by built-in compliance tools:
- Code Compliance Scanner — scans all PHP files for legacy
get_option('flavor_*')calls - Data Sovereignty Analyzer — scans
wp_optionsfor any residual legacy data
Most WordPress themes store everything in wp_options — serialized blobs, individual rows, transients. This leads to autoload bloat, no data isolation, and messy uninstalls. Flavor's approach means clean installs, clean uninstalls, and zero pollution of WordPress core tables.
The Visual Page Builder
37 Block Types (across 5 categories)
| Category | Blocks |
|---|---|
| Layout | Section, Container |
| Content | Heading, Text, Button, Icon Box, Accordion, Tabs |
| Media | Hero Slider, Image Grid/Banners, Info Banner, Sale Banner, Newsletter, Testimonials, Video |
| eCommerce | Product Grid, Product Categories |
| Utility | Shortcode / Raw HTML, Blog Posts, Google Maps |
Builder Features
- Smart settings — conditional visibility shows only relevant options per block. Selecting "Grid" mode reveals grid settings while hiding carousel options
- Custom CSS per block — dark code editor right next to the block it affects
- Custom class support — add your own CSS classes, properly sanitized per-token
- Responsive visibility — hide any block on desktop, tablet, or mobile
- Template Library — save designs as custom templates with organized subcategory tabs
- Presets — 8 pre-built page templates organized by category with subcategory filtering
- Import/Export — full JSON export and import of page layouts
- Undo/Redo — full history support
Security
The Page Builder underwent a comprehensive security audit with 68+ fixes covering CSS sanitization, XSS prevention, tag whitelisting, and output sanitization across all 48 blocks.
Header & Footer Builder
A visual drag-and-drop builder for creating custom headers and footers.
Structure
| Area | Layout |
|---|---|
| Top Bar | 3 fixed columns (left, center, right) — for announcements, contact info |
| Main Header/Footer | 3-5 configurable columns — primary content area |
| Bottom Bar | 3 fixed columns — copyright, legal links |
Features
- Drag-and-drop element placement
- Row settings — padding, background colors, height (20-100px)
- Per-element settings — individual configuration for each element
- Presets — 6 header presets, 4 footer presets
- Export/Import — JSON format for sharing or backup
- Live preview — see changes before publishing
- Set/Unset Default — activate a template on the frontend without deleting others
- Social links and mobile menu with fullscreen navigation
The Template System — 29 Templates
Instead of one rigid design per page type, you get multiple templates that you can switch between from the admin with a single click.
Cart Page — 8 Templates
| Template | Style |
|---|---|
| Classic Table | Traditional table layout with quantity controls |
| Modern Cards | Card-based design with product images |
| Minimal List | Clean, focused list view |
| Split View | Items on left, summary on right |
| Floating Summary | Sticky summary that follows scroll |
| Compact | Space-efficient for stores with many items |
| Visual Cart | Image-forward design |
| Quick Cart | Streamlined for fast checkout flow |
Checkout Page — 6 Templates
| Template | Style |
|---|---|
| Default | Classic two-column checkout |
| Stepper | Multi-step wizard with progress indicator |
| Payment Form | Payment-focused layout |
| Fixed Sidebar | Sticky order summary while filling forms |
| Shipping Details | Shipping-focused layout |
| Cart and Delivery | Combined cart review + delivery in one |
Order Received — 6 Templates
Progress tracker, items display, product list, shipping/billing details, overview variants — each presenting the "thank you" experience differently.
My Account — 5 Templates
Sidebar with Orders, Cards Overview, Tabs Overview, Sidebar Overview, Modal layout — from traditional sidebar navigation to modern card-based dashboards.
Shop & Categories — 2 Templates
Default shop layout and categories template.
404 Page — 3 Presets
Minimal (clean message + button), Navigation Help (icon-box links to guide visitors), Bold Dark (eye-catching dark design).
All templates are lazy-loaded and code-split — only the active template's code is downloaded. Template preloading anticipates the next page based on shopping flow (e.g., cart preloads checkout template). Template managers are PHP singletons with admin UI, AJAX activation, and rendering pipeline.
The Module System — 38 Modules
Instead of being "just a theme," Flavor includes 38 modules (12 Stable + 25 Beta + Debug System) that replace separate plugins:
General Modules
| Module | Replaces |
|---|---|
| Contact Form Builder | WPForms / Contact Form 7 |
| Mega Menu | Max Mega Menu / UberMenu |
| Image Optimization | ShortPixel / Imagify |
| Icons Library | Font Awesome plugin |
| Enhanced Search | SearchWP / Relevanssi |
| API Protection | Rate limiting / WAF plugins |
| SMTP Mailer | WP Mail SMTP |
| GDPR Cookie Consent | Borlabs Cookie |
| Exit Intent Popup | OptinMonster (basic) |
Marketing & SEO
| Module | Replaces |
|---|---|
| SEO | Yoast SEO / RankMath |
| Marketing & Tracking | Google Site Kit / PixelYourSite |
eCommerce Modules (with WP eCommerce Core)
| Module | Replaces |
|---|---|
| Abandoned Cart Recovery | CartFlows / WC Abandoned Cart |
| Advanced Wishlist | YITH Wishlist |
| Points & Rewards | YITH Points & Rewards |
| Gift Cards | YITH Gift Cards |
| Flash Sales | Sale countdown plugins |
| Product Labels | Product badge plugins |
| Stock Alerts | Back-in-stock plugins |
| B2B/Wholesale | Wholesale pricing plugins |
| PDF Invoices | PDF invoice plugins |
| Product Bundles | WC Product Bundles |
| Pre-orders | Pre-order plugins |
| Delivery Date Picker | Delivery date plugins |
| Product Q&A | Product questions plugins |
| Product Compare | Compare products plugins |
| Size Guide | Size chart plugins |
| WooCommerce Migration | N/A (unique) |
All modules can be enabled/disabled from a single admin page (Theme Options > Modules).
Contact Form Builder Highlights
This is a full form builder, not just a basic contact form:
- 16 field types — text, email, phone, textarea, select, radio, checkbox, file upload, hidden, date, time, number, range, URL, consent, reCAPTCHA
- Drag-and-drop field ordering with 6 pre-built templates
- Entry management with CSV export
- Anti-spam — reCAPTCHA v2, reCAPTCHA v3, Cloudflare Turnstile, honeypot
- Analytics — form view tracking and submission rates
- A/B Testing — test different form versions and compare conversion rates
Dev Components
A unique module that lets you stage new component versions without affecting the live site:
- Build the new component alongside the old one
- Preview as admin only
- Promote to live when ready, with instant revert if needed
- ErrorBoundary wrapper catches rendering errors
This is a component-level staging system built into the theme.
Shop Features
When paired with WP eCommerce Core, the theme transforms into a full storefront:
Product Display
- Product grid with multiple display modes and carousel with autoplay
- Quick View — modal popup with image fetching and variable product support
- Product cards with blur placeholders and modern image format support
AJAX Filters
- Price range slider
- In Stock / On Sale toggles
- Rating filter (4+, 3+, 2+, 1+)
- Dynamic attribute filters with color swatches
- Filter logic — AND/OR configurable for attribute combinations
- Active Filters Bar — tags with individual remove and Clear All
- URL sync — all filter states in URL parameters (shareable, bookmarkable)
Sidebar Cart
- Configurable position — left or right slide-out
- Free shipping progress bar — animated, threshold auto-detected from shipping methods
- AJAX-powered — add to cart without page reload
Checkout Field Configuration
- Per-field control — set each checkout field as Required, Optional, or Hidden
- Custom fields — repeater for adding text, textarea, select, or checkbox fields
- Show in email/order — per-field toggle
- Field ordering — reorder with up/down arrows
- All 6 checkout templates respect the configuration
The Translation System
Flavor has its own translation system, independent of WordPress's .po/.mo files.
- 260+ translatable strings stored in the database
- Priority chain: User overrides > Language pack > Registered defaults (English)
- Built-in Greek language pack — load it with one click
String Domains
Organized by context: theme.header.*, theme.footer.*, theme.ui.*, shop.product.*, shop.cart.*, shop.checkout.*, shop.account.*, shop.filters.*, shop.single.*, module.contact.*, module.mega.*, module.search.*
Admin UI
The Language tab features sub-tabs per domain, search with accent-insensitive matching, a one-click Greek pack loader, and per-string override — store owners can customize every customer-facing text without touching code.
Performance & Optimization
| Optimization | Details |
|---|---|
| Lazy Loading | Images lazy-load with blur placeholder shimmer animation |
| Defer JS | Non-critical JavaScript deferred |
| DNS Prefetch | Pre-resolves external domains |
| Code Splitting | React templates are lazy-loaded chunks |
| Template Preloading | Next-page template preloads based on shopping flow |
| WebP/AVIF | Image Optimization module with <picture> element |
| CSS Virtualization | content-visibility: auto on product cards |
| Font Preloading | Google Fonts <link rel="preload"> |
| Responsive Typography | clamp() for fluid headings |
| Touch Optimization | touch-action: manipulation removes 300ms tap delay |
The storefront uses Vite-built React with HMR for development, path aliases for clean imports, and ES Module integration with proper WordPress versioning.
Security
Security Module
- Custom login URL — hide wp-login.php from bots
- Rate limiting — configurable limits per endpoint
- Security headers — CSP, X-Frame-Options, HSTS, etc.
- Honeypot fields — invisible trap fields for bots
- Admin menu cleanup — remove unnecessary WordPress admin items