Skip to main content

Flavor Starter Theme - Changelog


[4.2.0] - 2026-03-20 — Puck Visual Builder Full Parity, 48 Blocks, Live Preview & ionCube

Added

  • Puck Visual Builder — Full-page editor — Dedicated full-viewport admin page with REST-driven data flow, custom header, unsaved changes warning
  • Puck Visual Builder — 48 blocks — Full parity with Classic builder. 15 foundation + 10 repeater + 8 remaining + 5 utility (container, shortcode, raw-html, video-background, popup) + 7 template + 3 dynamic (query-loop, product-grid, product-categories)
  • Puck Shared Features System — All 8 cross-block feature groups: entrance animations (16 types), hover effects (8), scroll effects (5), click triggers, responsive visibility, responsive order, conditional display, advanced CSS
  • ionCube encoding active — 4 theme licensing files ionCube-encoded in production builds
  • Builder Live Preview — Transient-based preview for unsaved changes (both builders)

Fixed

  • Builder Preview showed only saved data — Now saves to transient before opening preview
  • Disabled variants on storefront — 4 fixes across functions.php, RestApiController, VariantSelector, ProductInfo
  • Puck Video/Countdown/Before-After/Social Icons/Lottie blocks — Multiple quality fixes

[4.1.0] - 2026-03-19 — Visual Page Builder Ecosystem — Design System, 37 Blocks, AI, Template Builder & Flavor Editor

Added

  • Global Design System — Centralized design token system: colors (13 named + 8 custom slots), typography (body + H1-H6 with per-level controls), spacing scale (base unit multiplier). New "Design System" tab in Theme Options with 3 sub-tabs: Colors, Typography, Spacing. CSS output as --flavor-ds-* variables with backward-compatible aliases to existing --flavor-* vars. 50 curated Google Fonts with <optgroup> grouped by category. Live preview strips for colors and typography
  • Builder Palette Integration — Page Builder color picker shows Design System palette swatches. Selecting a palette color stores CSS variable reference (var(--flavor-ds-primary)) instead of hex — changes propagate site-wide when DS colors are updated. Active swatch indicator with friendly name display
  • CSS Class System — Define reusable named CSS classes in Design System > Classes. Each class has name, auto-slug, CSS properties, optional tablet/mobile overrides, and class inheritance. Apply to any block via chip selector in settings panel. Classes output as .flavor-class-{slug} rules with responsive media queries
  • Configurable Breakpoints — Tablet and mobile breakpoints are now configurable in Design System > Spacing. Default: 1024px/767px. Affects responsive visibility classes, section grid stacking, and all builder responsive CSS. Visual breakpoint range strip in admin
  • Per-Property Responsive — Section block has tablet/mobile overrides for padding top/bottom and column gap. Each outputs scoped media queries
  • Element Reordering — All blocks have orderTablet/orderMobile settings to change element order per breakpoint via CSS order property
  • Mobile-First CSS — Toggle in Design System > Spacing to switch media queries from desktop-first (max-width) to mobile-first (min-width)
  • Dynamic Responsive Visibilityflavor-hide-desktop/tablet/mobile CSS classes now generated from PHP with configurable breakpoints instead of hardcoded CSS values
  • Container Flexbox & Grid — Container block now supports Flexbox and CSS Grid display modes with full visual controls: direction, wrap, justify, align, gap (flex); columns, rows, gap, auto-flow, align/justify items (grid). FLEX/GRID badge in admin header
  • Section Grid Enhancements — Independent row gap control (separate from column gap). Horizontal alignment (justify-items) for column content alignment
  • Builder number field type — Added missing handler in admin settings panel for number inputs
  • Condition System Enhanced — Builder settings panel now supports negation ('!none') and boolean true conditions for field visibility
  • 18 New Page Builder Blocks — Total blocks: 19→37. Batch 1 (7): Divider, Alert/Notice, Social Icons, Video, Counter/Stats, Testimonials, Pricing Table. Batch 2 (7): Star Rating, Progress Bar, Countdown Timer, Table, Logo Carousel, Team Members, Image Gallery. Batch 3 (4): Before/After Slider, Map, Lottie Animation, Video Background
  • Entrance Animations — 16 animation types (fade, slide, scale, rotate, blur, flip, bounce) with configurable duration, delay, easing, and animate-once. Applied to ALL blocks via shared helpers. IntersectionObserver-based scroll trigger. Respects prefers-reduced-motion
  • Hover Effects — 8 hover effects (grow, shrink, float, shadow, rotate, brighten, dim) available on all blocks. CSS transition-based, no JS needed
  • Scroll Effects — 5 scroll-driven effects on all blocks: Parallax, Scale, Opacity, Parallax+Scale, Parallax+Fade. Speed control (slow/medium/fast), direction (up/down). GPU-accelerated via translate3d, requestAnimationFrame throttled, respects prefers-reduced-motion
  • Click Triggers — Show/Hide toggle (fade animation) and Scroll-to-Element (smooth scroll) on any block. Target by block ID or CSS selector. Auto cursor:pointer. Doesn't intercept links/buttons
  • Page Transitions — CSS-based page transitions: Fade, Fade Up/Down, Slide Left/Right. Global setting in Design System > Page Builder. Enter animation on load + exit animation on navigation. Smart link handling (skips anchors, external links, new tabs)
  • Dynamic Tags — Insert live data into any text block: {post_title}, {current_year}, {user_name}, {cart_count}, {custom_field:name}, and 20+ more. Extensible via action hook
  • Query Loop Builder — New query-loop block. Visual query builder: post type, taxonomy filters, ordering, pagination. Inner blocks card template repeats per result with dynamic tags resolving per-iteration. Grid/List layouts, Card/Bordered styling, Numbered/Load More (AJAX) pagination
  • Conditional Display — Show/hide any block based on: user login status, user role, URL parameters, date range, cart state, custom field. Blocks fully removed from HTML when condition not met
  • Sticky Section — Section block can now stick to top/bottom on scroll with configurable offset and z-index
  • Popup/Modal Block — Full popup system: 5 trigger types (click/page-load/scroll/exit-intent/timed), overlay, 5 sizes, 5 positions, 4 animations, close on button/overlay/Escape, show-once per session, inner blocks for content
  • Theme Template Builder (Full-Site Editing) — Create custom templates for single posts, pages, archives, and search results using the Visual Page Builder blocks. CPT flavor_template with conditions (category, tag, post type, post ID, author, user role) and priority system. 5 post content blocks + 3 archive blocks (Post Grid with pagination). Accessible via Flavor Builder > Theme Templates
  • AI Content Generation — Generate text for any block field via 4 AI providers: Gemini Free (no cost), ChatGPT, Claude, Gemini Pro. Server-side API calls, API keys never exposed to browser. Tone controls (professional/casual/persuasive/technical), 10 languages, context-aware prompts
  • AI Stock Photos — Search Unsplash and Pexels free stock photos directly in the builder. One-click download to WordPress Media Library
  • AI Image Generation — Generate images from text descriptions via Gemini Imagen. Auto-saved to Media Library
  • Block Picker Redesign — Sidebar categories layout (Option A): left sidebar with category list + counts, 4-column grid, quick favorites strip, category filtering, larger popup (740px), polished hover effects
  • Puck Visual Builder — Alternative drag-and-drop page builder (Elementor-style) alongside Classic Builder. Built on @puckeditor/core (MIT). Setting in Design System > Page Builder. Both builders write identical _flavor_page_layout JSON — BlockRenderer renders the same regardless of which builder created the data. Includes: Section (dynamic columns), Heading, Text, Image, Button, Spacer, Divider
  • Flavor Editor (Tiptap) — Modern React/Tiptap rich text editor replaces TinyMCE Classic Editor. Features: floating toolbar (headings, formatting, lists, links, images, alignment), markdown shortcuts (# heading, **bold**, - list, > quote), word/character count, Design System font integration, wp.media image insertion. Toggle in Theme Options > Optimize > Editor. Backward compatible — clean HTML in post_content

Updated

  • Theme > Colors/Typography tabs — Deprecated in favor of Design System tab. Deprecation notice with link added. Still functional for backward compatibility
  • CSS output pipeline — Color and typography variables now handled by Design System (priority 98) instead of legacy flavor_output_custom_css. Container width variables preserved

[4.0.0] - 2026-03-15 — Pay-from-Day-1 Licensing, Server-Side Component Delivery & Code Protection

Breaking Changes

  • Licensing Model: Pay from Day 1 — Removed 14-day trial system. All modules require an active license. FREE_MODULES emptied

Added

  • Flavor_Integrity_Verifier — Runtime file tamper detection via SHA256 + Ed25519 signed manifest
  • Distributed Sentinels (5) — Anti-nulling checks in 5 files using different methods
  • Server-Signed Feature Manifest — Flavor_License_Gate supports server-signed manifest with per-category tier requirements
  • Flavor_Component_Installer — Server-side module delivery: download, verify, extract, track. Bulk install on activation
  • Skeleton Architecture — Skeleton mode via FLAVOR_CORE_INSTALLED. Only licensing + DDD infrastructure loaded when core missing
  • Auto-Reinstall After Upgrade — Fullscreen popup auto-downloads components when licensed user upgrades theme

Updated

  • Module Cards UI — "Not Installed" state, "Install Module" button, UPDATE badge with per-module update button
  • License Activation Progress UI — Fullscreen modal with sequential component download and progress bar
  • Component Update SystemcheckUpdates(), getAvailableUpdates(), twicedaily cron, admin notices, bulk update handler
  • Flavor_License_Gate — Removed all trial logic, simplified admin notices
  • tab-license.php — "No License" badge, trial CTA removed, all modules locked without license
  • BootstrapisCoreInstalled() detection, initializeSkeletonMode(), renderSkeletonAdminPage()
  • functions.php — Conditional file loading with FLAVOR_CORE_INSTALLED, skeleton stubs for flavor_t()/flavor_te()
  • theme-options.php — License-only mode: only License tab without license, full 11-tab page with license

Fixed

  • PageBuilder sentinel getCurrentTier() bug — Fixed to getEffectiveTier()
  • Flavor_License_Fingerprint NULL insertset_option(key, null)delete_option() for NOT NULL column
  • Skeleton template fatals — header.php, footer.php, 404.php guarded with FLAVOR_CORE_INSTALLED check
  • flavor_t()/flavor_te() stubs — Stub functions prevent fatal errors in 42+ templates during skeleton mode
  • OptionsRepository table-not-existssuppress_errors() around queries before first migration

[3.10.0] - 2026-03-12 — Search Analytics & Module Organization

Added

  • Search Module v1.2.0 — Analytics dashboard — New "Analytics" admin tab with stats cards (today/7d/30d searches, unique queries, zero-result rate), top 20 queries table, zero-result queries table, auto-populate Popular Searches from analytics data, clear all data button. flavor_search_log DB table with daily cleanup cron and configurable retention (7d–1yr). Enable/disable toggle (GDPR).
  • Search Module v1.2.0 — Multi-word search — Search now splits queries into words with AND matching. "red shirt" finds products containing both words in title/SKU/description (was exact phrase only). Cumulative relevance scoring per word.

Updated

  • Modules Tab — Search bar — New search input filters modules across all subtabs by title and description.
  • Modules Tab — Eshop sub-sections — Eshops subtab reorganized from flat 24-module list into 4 logical groups: Pricing & Promotions, Product Enhancement, Order & Checkout, Customer & Store.

Fixed

  • Search Module — Admin JS option key — JS-added popular search items used wrong form name (flavor_module_search instead of module_search), causing new items to silently not save.

[3.9.0] - 2026-03-11 — Receipt/Invoice Checkout & AADE AFM Validation

Added

  • Receipt/Invoice checkout integration — Απόδειξη/Τιμολόγιο selection at checkout. New shared InvoiceSection React component across all 6 checkout templates + 5 PHP builder templates. VIES VAT validation with auto-fill. Invoice data flows checkout → order meta → PDF generation. Dead hooks fixed (flavor_*wpec_*). 4 new i18n keys (EN + EL). PDF Invoices module v1.1.0 → v1.2.0.
  • AADE AFM Validation — Greek VAT (ΑΦΜ) validation via official AADE RgWsPublic2 SOAP service. Auto-routing: Greek AFMs → AADE (returns structured company name, DOY, KAD activity, address), other EU → VIES. Admin settings card with credentials + test button. 24h response caching. 18 new i18n keys (EN + EL).

Fixed

  • PDF Invoice email attachments — Fixed Brevo plugin silently dropping wp_mail() attachments. New strategy suspends pre_wp_mail filters so PHPMailer handles attachments natively.
  • Points & Rewards Module v1.1.0 (Beta → Stable) — Full quality audit: shortcode TypeError fix (PHP 8.x), WooCommerce reference removed, hooks migrated to wpec_*, i18n migration (83 keys EN + EL), duplicate points prevention, nonce verification, inline CSS moved to external file.
  • Points & Rewards admin UI polish — Card structure fixed to follow fa-card-header pattern. Quick Adjust form: stacked layout for narrow sidebar.
  • PDF Invoices tab-modules.php — Version v1.0.0v1.1.0, removed BETA badge.

[3.8.0] - 2026-03-10 — Fingerprint Verification, PDF Invoices Overhaul & Dynamic Currency

Added

  • License Fingerprint Verification — Ed25519 signed fingerprint file (.flavor-license.dat) for triple-verification (license_key + domain + fingerprint). Prevents file cloning across domains. Filesystem storage with DB fallback for managed hosting.

Updated

  • PDF Invoices Module v1.1.0 (Beta → Stable) — Full quality audit: i18n migration (35 __()flavor_t(), 50+ _e()flavor_te(), 30+ hardcoded Greek → flavor_t(), 7 number_format()flavor_format_price()). Security fixes (REST permission, guest download validation). DI fix, wp_slash() for JSON meta, dompdf try-catch + isRemoteEnabled, HTML fallback. Hook fix (wpec_order_status_changed), admin actions (Resend/Regenerate/Delete), relative path storage with protocol-agnostic resolvers, Brevo API direct send for attachments. 131 translation keys (EN + EL).

Fixed

  • License tab — Trial badge and message showing despite active license (priority check order fixed)
  • Hardcoded 'GR' country codes — Replaced with dynamic store country in 5 checkout templates and 2 theme modules
  • Hardcoded currency symbols (€) — PHP — Replaced in 29 theme files with dynamic flavor_format_price() and flavor_get_option('currency_symbol')
  • Hardcoded currency symbols (€) — JS — Replaced in 6 jQuery files and 1 React file with PHP-localized currencySymbol

Full Version History

For the complete changelog including all previous versions, contact our support team.