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 is a Vite-built React application, shipped as optimized, code-split ES Module bundles 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
API Protection Module
- Server-side rate limiting for REST API requests
- Burst detection — catches rapid-fire API abuse
- Ban escalation — escalating ban durations (60s > 5m > 1h)
- Monitoring dashboard — real-time stats, charts, and logs
- Client-side circuit breaker — prevents frontend from hammering a failing endpoint
- Custom endpoint rules — per-endpoint rate limits
Code Protection
- ionCube encoding — backend PHP files are ionCube-encoded (only the WordPress-header entry files stay plain), preventing code reading and unauthorized modification
- Ed25519 integrity verification — all distributed files are signed with Ed25519 and verified at runtime against a tamper-proof manifest
- Distributed sentinels — multiple independent anti-nulling checkpoints across the codebase
- Graceful degradation — if ionCube Loader is not available, the theme degrades gracefully instead of crashing
Your store stays online and keeps taking orders — pages, products, checkout and your data are untouched, and nothing is ever deleted. Premium capabilities pause until you renew (premium payment gateways — cash-on-delivery and bank transfer stay available — the ERP suite, and premium theme modules), and updates, new installs and support stop. An opt-in grace period (14 days by default) keeps everything at full capacity while you renew; renewing restores everything instantly.
Admin Framework
The theme provides a consistent CSS design system for all admin interfaces:
- 18 CSS component sections (~780 lines) with design tokens for colors, spacing, radius, shadows, typography
- Component classes for cards, badges, toggles, stats grids, buttons, inputs, tables, notices, progress bars, modals, code blocks, and more
- Responsive at 1200px, 960px, 600px breakpoints
- Module convention — 2-3 letter prefix per module for CSS isolation
Every module's admin page looks consistent and professional.
Who Is This For?
Great fit:
- Store owners who want a complete solution without plugin hunting
- Greek businesses that need native language support and localized features
- Agencies building client sites who want lower long-term maintenance
- Developers who appreciate a consistent architecture and clean extension points — hooks/filters, DI container, REST API, templates, and design tokens
- Anyone who values having one support contact instead of fifteen
Consider your needs:
- Power users who need 100+ page builder widgets (48 blocks covers most needs, but you can pair with Elementor for complex landing pages)
- Sites heavily dependent on specific Astra/Flatsome integrations
- Teams that need the largest possible theme community for hiring
Roadmap
More Page Builder Blocks
Call-to-Action, FAQ, and additional blocks based on user feedback.
More Templates
Additional Shop and Categories templates beyond the current designs.
Per-page Header/Footer
Assign different header/footer templates to specific pages.
Expanded Module Ecosystem
Continued refinement of beta modules plus new modules based on market needs.
Last updated: July 2026