=== Canvza ===
Contributors: fixstable
Tags: page builder, landing page, service, support, conversion
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 0.8.48
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Build service, support, landing, and conversion pages with a visual builder, header/footer controls, and commercial sections.

== Description ==

Canvza is a lightweight visual page builder for WordPress sites that need clear service, support, landing, and conversion pages — without replacing your theme or loading a full site builder stack.

Learn more at [Canvza](https://canvza.com).

Use the Canvza canvas to arrange sections, headings, CTAs, FAQ blocks, pricing panels, proof sections, and request/contact layouts. Page Settings let you control layout width, colors, spacing, and a builder-managed header and footer with logo text, navigation links, and a primary CTA.

**Included in the free plugin**

* Visual drag-and-drop builder for WordPress pages
* 27 builder elements — layout, content, media, and commercial blocks
* Builder-managed header and footer with mobile menu toggle
* Page Settings for colors, spacing, canvas mode, and navigation
* Save your own reusable sections and full-page templates
* Import/export for builder library JSON
* Service / Support Business preview kit workflow (page starters when the Pro companion is not installed)

**Canvza Pro (separate plugin)**

Pro is an optional companion plugin. It is not required for the free builder to work. When installed, Pro adds full multi-page site kits, a premium section library, and design packs such as global style presets, header/footer packs, and brand color packs.

The free plugin does not include Pro site kits, Pro section templates, or Pro design packs.

**Forms**

Canvza includes a Brief Form element with editable fields, validation, nonce protection, and WordPress mail handling. Contact and request layouts can also include form plugin shortcodes inside text blocks when you use a supported form plugin (for example Contact Form 7 or WPForms).

**Ecommerce and WooCommerce**

The free plugin does not include ecommerce checkout, cart flows, or deep WooCommerce product integration. Pro may include editorial storefront-style kits; WooCommerce remains the system of record for shop, cart, and checkout when you need real commerce.

**External Services**

Canvza includes optional elements that can embed third-party maps and videos. Canvza does not send visitor information to these providers from the WordPress server. A visitor's browser contacts a provider only when a site owner configures the relevant element and publishes a page containing that embed.

* **Google Maps** is used by the Service Area Map element to display an embedded map and optionally link to Google Maps. When that element is used, the visitor's browser may send the requested map URL and standard web-request data such as IP address, browser/user-agent information, referrer, and provider cookies to Google. [Google Terms](https://policies.google.com/terms) and [Google Privacy Policy](https://policies.google.com/privacy).
* **YouTube / YouTube No-Cookie** is used by the Video element when a site owner supplies a YouTube URL. The visitor's browser requests the configured video embed from YouTube or `youtube-nocookie.com` when the published embed loads; standard request data such as IP address, browser/user-agent information, referrer, and provider cookies or storage may be processed according to Google's policies. [YouTube Terms](https://www.youtube.com/t/terms) and [Google Privacy Policy](https://policies.google.com/privacy).
* **Vimeo** is used by the Video element when a site owner supplies a Vimeo URL. The visitor's browser requests the configured player embed from Vimeo when the published embed loads; standard request data such as IP address, browser/user-agent information, referrer, and provider cookies or storage may be processed by Vimeo. [Vimeo Terms](https://vimeo.com/terms) and [Vimeo Privacy Policy](https://vimeo.com/privacy).

**Compatibility**

Canvza is designed to run alongside common WordPress plugins. The free plugin does not certify or bundle support for commercial plugins such as WP Rocket, WPML, or Divi. Multilingual workflows use your multilingual plugin’s standard page translation workflow.

== Installation ==

1. Upload the plugin files to `/wp-content/plugins/canvza`, or install through the WordPress Plugins screen.
2. Activate the plugin through the Plugins screen.
3. Edit a page and choose **Edit with Canvza**, or open **Canvza** in the admin menu.
4. Build your page, configure Page Settings, then save or publish.

== Frequently Asked Questions ==

= Does this plugin require Canvza Pro? =

No. The free plugin is fully functional on its own. Pro is optional and adds site kits, premium sections, and design packs.

= Can I use this with Contact Form 7 or WPForms? =

Yes. Place a supported form plugin shortcode inside a text block on your contact or request page. A first-class Form Embed element is planned for a future update.

= Does the free plugin include full site kits? =

The free plugin includes core builder tools and a Service / Support Business preview workflow. Full multi-page premium site kits ship with the separate Pro companion plugin.

= Will deactivating the plugin delete my pages? =

No. Builder content is stored on standard WordPress pages and post meta. Deactivating the plugin does not remove your pages.

= Who can access the builder? =

Users need permission to edit the page they are working on. Some admin screens also require the `edit_theme_options` capability.

= Does Canvza work with my theme? =

Canvza is designed to render builder pages inside your active WordPress theme while applying its own builder styles for those pages. Compatibility can vary by theme, so test important pages before launch.

== Screenshots ==

1. Canvza canvas with sections and the element library.
2. Element and library panel with layout and commercial blocks.
3. Page Settings with header, footer, colors, and dynamic wordmark controls.
4. Published frontend page with builder header, sections, and CTA.
5. Library view showing reusable saved sections and page templates.

== Source and Build ==

`assets/js/admin.js` is a readable hand-authored source file that ships directly in the plugin package.

For reviewer clarity, the same source is also included at `src/admin/admin.js`, with a short note in `src/admin/BUILD.md`.

== Changelog ==

= 0.8.48 =
* Makes all ordinary Core GET and init navigation read-only; new Builder pages now use a capability- and nonce-protected POST action.
* Moves legacy data migrations to a version-aware activation/update lifecycle.
* Makes the shipped Brief Form and Service Area Map implementations explicitly available in free Core.
* Removes contradictory locked roadmap placeholders while keeping one informational Canvza Pro link.
* Synchronizes the shipped admin runtime with its readable source mirror and adds external-service disclosures.

= 0.8.47 =
* Makes bright and dark page color modes fully available in the free plugin.
* Moves premium Site System renderers, element definitions, styles, and interactive behavior to the separate Canvza Pro plugin.
* Keeps Builder GET navigation read-only; page initialization occurs only through capability- and nonce-protected saves.
* Preserves unknown extension nodes safely when their companion plugin is unavailable.

= 0.8.38 =
* Removed block-theme wrapper spacing from full-width Canvza canvas pages.

= 0.8.37 =
* Builds imported Site System navigation from the WordPress pages created by the import instead of authored placeholder routes.
* Creates the imported WordPress menu and selects the imported Home page as the static front page by default.

= 0.8.36 =
* Keeps Canvza canvas content visible when a block theme places the page title and post content inside the same wrapper.

= 0.8.35 =
* Makes full Site System publication a one-time first-import action; later Publish and Update actions affect only the current page.
* Defers a draft import's static homepage activation until every imported page is public.
* Completes pending Site System publication and homepage setup when pages are bulk-published through WordPress.

= 0.8.34 =
* Adds one canonical customer handbook and an in-product Documentation screen.
* Adds contextual documentation links to first-run and Site System import surfaces.
* Corrects repeated Site System import guidance and improves dependency errors.

= 0.7.0 =
* Adds reusable professional-services breadcrumbs, directories, profiles, and legal notices.
* Adds accessible checkbox consent fields to the Builder intake form.
* Adds legal-resource presentation support for professional insight content.

= 0.6.17 =
* Finish Emberline's campaign media crops, attached campaign note, identity strip, responsive rhythm, and reduced-motion resting composition.
* Keep the polished Emberline composition shared between the Canvza Builder preview and public renderer.

= 0.6.12 =
* Repair effective-width behavior in desktop, tablet, and mobile Builder previews.
* Add kit-scoped system states, article rendering, archive modes, and canonical support-content ownership.
* Add editable header-family, mobile-label, publishing, search, and contextual CTA settings.
* Improve mobile navigation focus management, escape handling, touch behavior, and scroll locking.

= 0.6.11 =
* Refine Emberline's responsive hero, navigation, campaign media, identity strip, and reduced-motion presentation.
* Preserve editable button colors in Emberline across the Builder preview and frontend renderer.
* Add a reusable Image Inspector focal-position control with matching Builder and frontend rendering.

= 0.6.10 =
* Finalize Emberline reel and featured-package contrast in dark mode.

= 0.6.9 =
* Tighten Emberline editorial card hierarchy without affecting other Canvza kits.

= 0.6.8 =
* Added responsive, Builder-parity presentation rules for Emberline Studio's editorial hero, campaign reel, asymmetric portfolio, service hierarchy, process, proof, FAQ, and closing CTA.

= 0.6.7 =
* Unified Canvza preview roots with the canonical frontend section, row, column, card, grid, media, and typography contract.
* Isolated drag, insertion, hover, and selection affordances from page flow and added explicit unsupported-component diagnostics.

= 0.6.6 =
* Tightened the SignalFlow trust-to-command-center transition with matched Builder values and responsive section-edge spacing.

= 0.6.5 =
* Polished SignalFlow navigation hover, active, focus, and mega-menu states with compact theme-native surfaces and reduced-motion support.

= 0.6.4 =
* Strengthened the SignalFlow workflow introduction with balanced display typography, clearer supporting-copy hierarchy, and matching responsive Canvza previews.

= 0.6.3 =
* Tightened SignalFlow canvas edge spacing and workflow-card hierarchy across the published page and responsive Canvza previews.
* Kept light workflow-card surfaces and readable typography intact inside the dark editor workspace.

= 0.6.2 =
* Added coordinated muted looping previews for self-hosted modal videos, while preserving user-initiated playback controls, focus handling, visibility pauses, and reduced-motion safeguards.
* Extended demo media imports so Pro kits can resolve bundled MP4 and poster pairs into the WordPress Media Library without hardcoded frontend assets.

= 0.6.1 =
* Added a first-class poster-first Video element for self-hosted media, YouTube, and Vimeo.
* Added inline and modal playback, local poster controls, captions, responsive sizing, reduced-motion safeguards, lazy embeds, and accessible keyboard/focus behavior.

= 0.6.0 =
* Migrated the public product identity to Canvza while retaining compatibility-sensitive plugin paths, data keys, hooks, and import contracts.
* Updated the admin workspace, launch actions, notices, documentation, and Free/Pro naming for Canvza.

= 0.5.46 =
* WordPress.org Plugin Check follow-up: cleaned the Free package layout, made admin nonce verification explicit, and reduced Plugin Check noise without changing shipped behavior.

= 0.5.45 =
* WordPress.org Plugin Check follow-up: tightened request sanitization and nonce handling, normalized line endings, fixed the builder hook prefix, improved admin page listing for builder-managed WordPress pages, and improved compatibility with review tooling.

= 0.5.44 =
* WordPress.org compliance follow-up: free saved sections and saved page templates now work without the Pro companion plugin.
* Tightened schema heading rendering with an explicit heading tag allowlist.
* Added admin script source/build notes and bundled readable source copy for `assets/js/admin.js`.
* Updated readme wording so the free package is described as fully functional as shipped.

= 0.5.43 =
* Added WordPress.org readme.txt and complete plugin headers for directory submission.
* Added translator comments for custom post type admin labels.
* Readme: corrected Free element count (25) and added theme compatibility FAQ.
* Plugin header: Author URI set to https://fixstable.com (Plugin URI omitted per WordPress.org header rules).
* No functional plugin code changes in this release.

= 0.5.42 =
* Ecommerce kit palette and frontend contrast improvements (Pro companion kits).
* General stability and QA fixes.

= 0.5.41 =
* Paid v1 Free release baseline.

== Upgrade Notice ==

= 0.8.48 =
Makes Core GET navigation read-only, frees all shipped Core elements, and replaces locked placeholders with informational Pro discovery.

= 0.8.47 =
Clarifies the Core/Pro boundary while keeping the free builder and color modes fully functional.

= 0.8.38 =
Keeps imported full-width canvases flush with the viewport in block themes.

= 0.8.37 =
New full Site System imports use their created WordPress pages for navigation and homepage setup.

= 0.8.36 =
Canvas pages remain visible with block themes that group the page title and post content together.

= 0.8.35 =
Imported Site Systems now transition cleanly from draft review to one-time full publication, then return to normal per-page publishing behavior.

= 0.5.46 =
WordPress.org Plugin Check follow-up: cleaned the Free package layout, made admin nonce verification explicit, and reduced Plugin Check noise without changing shipped behavior.

= 0.5.45 =
WordPress.org Plugin Check follow-up: tightened request sanitization and nonce handling, normalized line endings, fixed the builder hook prefix, and improved compatibility with review tooling.

= 0.5.44 =
WordPress.org compliance update: free saved templates are fully enabled, renderer allowlists were tightened, and admin script source notes were added.
