=== Tiger Elements ===
Contributors: tigerelements
Tags: elementor, elementor addons, elementor widgets, dynamic tags, visibility conditions
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 2.2.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Elementor addons — 45 widgets, dynamic tags & visibility conditions, plus Widget Guard that disables a crashing widget before it breaks pages.

== Description ==

**Tiger Elements** is an Elementor toolkit built around two problems that widget libraries usually leave to you: what happens when a widget breaks, and what happens to your page weight as the library grows.

= A crashing widget gets caught, not left to repeat =

**Widget Guard** tracks which Tiger widget is mid-render on every front-end request. If a fatal error halts the request, a shutdown handler identifies the widget that was rendering, logs the error, file and line, and counts it as a strike in a rolling one-hour window. Three strikes and that widget is switched off automatically and replaced with a placeholder, with a persistent admin notice telling you which widget failed and why, so you can fix it and switch it back on.

The point is that a widget which breaks on one template stops breaking every page that uses it, and you find out from a notice naming the file and line rather than from a visitor reporting a blank page. A single one-off error never disables anything.

= You decide what loads =

Every widget and every module has its own on/off switch in one dashboard, so you can strip the library down to the handful you actually build with. Styles and scripts are shipped as separate per-widget files rather than one combined bundle, so turning things off genuinely reduces what a page has to pull in.

= Data binding without Elementor Pro =

15 dynamic tags bind text, images and links to post, site, author, archive and custom-field data, and visibility conditions show or hide any element by login state, role, date or device. Both work with the free Elementor.

Alongside that: a WebP/AVIF media converter that runs at upload, schema markup, maintenance mode, a menu builder, global site styles and marketing/SEO tag fields.

Nothing here is capped, trial-limited or gated behind a licence — there are no "3 of 10 used" counters and no upgrade wall inside a feature. Paid features are separate, not crippled versions of these.

= 45 free Elementor widgets =

* **Content & layout** — Advanced Section, Info Box, Flip Box, Call to Action, Creative Button, Stylish Headline, Editorial Text, Table, Price List, Pricing Table, Team Member, Timeline, Business Hours, Event Calendar, Portfolio, Charts, Progress Bar, Counter, Countdown, Marquee, Table of Contents, Reading Progress, Back to Top.
* **Navigation & interaction** — Nav Menu, Tabs, Accordion, Search, Slider, Image Compare, Lottie Animations, Calculator, QR Code, Sales Notification (FOMO).
* **Posts & archives** — Post Grid, Category Grid.
* **Forms** — Contact Form 7 styler, Gravity Forms styler.
* **WooCommerce & accounts** — My Account, Login, Register, Lost Password.
* **Site & SEO** — Site Logo, Copyright, Social Share, Schema Markup.

= Free site-building tools =

* **Dynamic tags** — bind text, images and links to post, site, author, archive and custom-field data anywhere in Elementor.
* **Visibility conditions** — show or hide any Elementor element by login state, user role, date, device and more.
* **Menu builder** — build and assign navigation menus visually.
* **Site Styles** — set global colors and typography for the whole site in one place.
* **Schema Markup** — output structured data (article, product, FAQ, local business) without a separate SEO plugin.
* **Wrapper Link, Maintenance Mode, Media Converter (WebP/AVIF), Marketing & SEO tags** — everyday site tools, all free.

Everything in the free plugin is fully usable — no usage caps, no locked settings inside free features.

= Tiger Elements Pro =

[Tiger Elements Pro](https://tigerelementswp.com/pricing/) adds the full-site building tools and the dynamic-content engine:

* **Theme Builder** — headers, footers, single, archive, 404 and loop templates with display conditions.
* **Popup Builder** — design popups visually, with exit-intent, scroll, delay and click triggers plus audience targeting.
* **WooCommerce Store & Funnel Builder** — custom checkout, cart, my-account and thank-you templates, order bumps, post-purchase upsells, side cart, and a conversion suite (swatches, quick view, wishlist & compare widgets and stores).
* **Dynamic-content engine** — CPT Builder, Custom Content Types (own tables), visual Query Builder, bi-directional Relations, and the dynamic listing widgets (Dynamic Loop, Query Grid, AJAX Grid, Loop Carousel, faceted filter suite).
* **AI page building (MCP)** — connect Claude or another AI assistant and build pages conversationally, plus Figma import.
* **Integration & premium widgets** — Google Reviews & Badge, Instagram Feed, Store Locator, Yelp & Trustpilot Reviews, Hero, Testimonials, Mega Menu, Off-Canvas, advanced sliders and carousels, and more.

These Pro features are a separate plugin (Tiger Elements Pro), not included in this free download — none of their code ships here. The dashboard's "Upgrade to Pro" page lists what Pro adds.

== Frequently Asked Questions ==

= Does Tiger Elements require Elementor? =
Yes. It is an addon for the free [Elementor](https://wordpress.org/plugins/elementor/) page builder. It does not require Elementor Pro.

= Is the free version limited? =
No. Every feature that ships in the free plugin is fully usable with no usage caps. Pro features (Theme Builder, Popup Builder, the WooCommerce builder, the dynamic-content engine, AI building and the integration widgets) are a separate plugin, not included in this free download.

= Will it slow my site down? =
The plugin is modular: every widget and module can be switched off from the dashboard, and front-end assets load only for the widgets a page actually uses.

= Does it work with my theme? =
Yes — Tiger Elements works with any theme that supports Elementor.

= Can I upload SVG files? =
Yes, but it is off by default and deliberately narrow. Switch it on under Tiger Elements → Tools → Media Converter, which is the screen that governs what happens to a file when you upload it. Only users who can already publish unfiltered HTML (administrators) may upload an SVG, and every file is sanitised as it arrives — scripts, event handlers, javascript: links and external entities are stripped, and a file that will not parse as valid SVG is rejected.

= Does the free plugin send data to external services? =
No — see the External Services section below.

== External Services ==

Out of the box the plugin makes no external requests. Each service below runs
only after **you** enable a feature and enter your own credential/ID; none fire by
default, and each is optional.

**Google Tag Manager / Google Analytics** — used only if you enter a GTM container
ID or GA4 measurement ID in Marketing & SEO. The plugin then outputs Google's
standard tag on the front end, and your visitors' browsers load and send analytics
data to Google under Google's terms. What is sent and when is determined by Google.
Terms: https://marketingplatform.google.com/about/analytics/terms/us/ · Privacy:
https://policies.google.com/privacy

**Google reCAPTCHA** — used only if you enable reCAPTCHA and enter your site/secret
keys under Tiger Elements → Integrations. When a protected form is submitted, the
reCAPTCHA token is sent to Google's siteverify endpoint
(https://www.google.com/recaptcha/api/siteverify) to check the submission is human.
Terms: https://policies.google.com/terms · Privacy: https://policies.google.com/privacy

**Google Maps / Places** — used only if you enter a Google Maps API key (for the
map / store-locator features). The key is validated with a single test request to
the Google Places API when you save it, and the Maps JavaScript API is loaded on
pages that display a map. Requests go to https://maps.googleapis.com under Google's
terms. Terms: https://cloud.google.com/maps-platform/terms · Privacy:
https://policies.google.com/privacy

**Google PageSpeed Insights** — used only if you run the optional performance check
on the Tiger Elements dashboard. Your site's public URL is sent to
https://www.googleapis.com/pagespeedonline so Google can return a performance score.
Terms: https://developers.google.com/speed/docs/insights/v5/about · Privacy:
https://policies.google.com/privacy

**Social share links** — the Social Share widget renders standard share links (X/Twitter,
Facebook, LinkedIn, WhatsApp, Reddit, Telegram, email). The plugin itself sends nothing;
when a visitor clicks a button, their own browser opens that network's share URL (for
example https://api.whatsapp.com/send) with the page title and URL. Each network's use is
governed by its own terms and privacy policy.

**Lottie animations** — the Lottie widget fetches the animation JSON from a URL you
supply; if that URL is external, your visitors' browsers load it from there.

**YouTube / Vimeo embeds** — if you add a YouTube or Vimeo link to a gallery item,
the lightbox embeds that video and your visitors' browsers load it from
https://www.youtube.com/embed/ or https://player.vimeo.com under those services'
terms. YouTube Terms: https://www.youtube.com/t/terms · Google Privacy:
https://policies.google.com/privacy · Vimeo Terms: https://vimeo.com/terms ·
Vimeo Privacy: https://vimeo.com/privacy

The Contact Form 7 and Gravity Forms widgets only style forms created by those
plugins and add no external calls of their own.

== Screenshots ==

1. Free widgets — Charts, Editorial Text, Image Compare, Calculator, Lottie, filterable Portfolio, QR Code, Sales Notification, Slider and Countdown, all in the free build with no caps.
2. Free content widgets — Post Grid, Category Grid, Tabs, Accordion, comparison Table and Table of Contents.
3. Free conversion widgets — Pricing Table, Team Member, Business Hours, Creative Button, Call to Action and Progress Bar.
4. Free engagement widgets — Slider, Counter, Countdown, Marquee, Social Share and live AJAX Search.
5. Widget Guard — a crashing widget is caught, switched off after three errors in a rolling hour, and replaced with a placeholder, with an admin notice naming the file and line.
6. Dynamic tags and visibility conditions — bind text, images and links to post, author and custom-field data, and show or hide any element by login state, role, date or device. No Elementor Pro required.
7. You decide what loads — every widget and module has its own on/off switch, and front-end assets load only for the widgets a page actually uses.
8. Free site-building tools — dynamic tags, visibility conditions, menu builder, site styles, WebP/AVIF media converter, schema markup, wrapper link and maintenance mode.

== Installation ==

1. Upload the `tiger-elements` folder to `/wp-content/plugins/`.
2. Activate the plugin from the Plugins screen.
3. Configure modules under the Tiger Elements dashboard.

== Changelog ==

= 2.2.4 =
* WordPress 7.1 compatibility: 7.1 lets the browser convert an image to WebP before it is uploaded. Media Converter treated those uploads as "nothing to do" and stopped producing the AVIF copies on sites set to keep both formats. It now adds them.
* Gravity Forms Styler: the Submit button controls and the textarea minimum height had no effect on forms using the Gravity Forms "orbital" theme, whose own styles outranked the widget's. The panel now wins.
* Licence screen: the panel is laid out properly on its own page instead of inheriting nothing from the dashboard — a real card, one row of actions and a readable key field.
* Housekeeping: cleared every remaining Plugin Check error (translators comments, redundant query flags, one false-positive annotation). No behaviour changes.

= 2.2.3 =
* Media Converter: convert images that are **already** in your library, not just new uploads. Scan first to see what is in scope and roughly what it saves, then convert in batches you can stop and resume. Every skip states its reason, and a run survives closing the page.
* Media Converter: convert exactly the files you pick — select them in the Media Library and choose "Convert with Tiger Elements" from Bulk actions.
* Media Converter: fixed the per-file "Skip this file for the media converter" box being missing whenever automatic upload conversion was switched off (the default) — the one control that protects a file was absent exactly when it was needed.
* Media Converter: the page now says when new uploads are not being converted yet, and warns that converted images become WebP so anything that must stay PNG/JPEG can be excluded first.
* Widget Guard: reactivating the last disabled widget left the "1 widget was auto-disabled" banner and menu badge on screen above an empty table, which read as if the fix had failed.
* Dashboard and Plugin Settings disagreed about how many modules and widgets were active. Both now count the same things; a phantom widget id that never existed no longer inflates the total.
* Menu Builder was loading its off-canvas stylesheet on every page of the free build, for widgets that build does not ship. Also removed a dead admin view that was still shipping to Pro customers.
* Widgets whose target plugin is missing no longer appear in the Elementor panel: the CF7 and Gravity Forms stylers, and the WooCommerce widgets. Saved pages are unaffected — the widgets stay registered and return the moment the plugin is back.
* Timeline: layout and behaviour switches moved into their own Settings section, and the vertical rail now stops at the last marker instead of running past it.
* Table Builder: a table set to four columns now asks for four cells per row, not six.
* Image Compare: the divider follows the cursor while dragging in the editor, and each label now hides only when its own image is off screen.
* Info Box: the feature list is centred and no longer inherits an oversized font from the theme.
* CTA Section: the newsletter form follows the Content Alignment setting instead of sitting off-centre.
* Site Logo: added the missing Style tab, and the site-name fallback is no longer clipped.
* Defaults polish across badges (post grid, portfolio, team, category, product grid), flip-box lists, and the search focus ring.


= 2.2.2 =
* Review hardening: Widget Guard's disabled-widget placeholder now renders through Elementor's render_content filter instead of an output buffer spanning two hooks, and the guard now applies its three-strikes threshold to load-time failures too, so a transient environment blip can no longer disable widgets. Every JSON block printed into a script context is encoded with the full JSON_HEX_* flag set, and the inline-asset collector neutralises tag-terminating sequences in CSS/JS bodies. Removed from this build: the opt-in telemetry scaffolding (was never active), the last external CDN reference, all unused Pro-widget asset files, and a dead admin view. Readme title aligned with the plugin name; External Services now also documents the gallery's YouTube/Vimeo embeds.

= 2.2.1 =
* WordPress.org review hardening: removed the site-wide Custom Code feature (raw head/body/footer boxes) from the free build entirely; replaced all output-buffering (`ob_start`) in admin screens and widgets with string building through WordPress's inline-asset APIs; escaped every remaining echoed value at output (esc_attr/esc_url/wp_kses); prefixed the search transient; and guarded the editor against a Pro-only class reference. No functional changes for users.

= 2.2.0 =
* WordPress.org compliance: the free build now contains no Pro widget code, no locked "PRO" editor cards, no Pro catalog and no gating logic — the paid widgets/modules live only in the separate Tiger Elements Pro plugin. Removed the Mailchimp and YouTube integrations from the free build. Every admin and front-end style/script is now emitted through WordPress's enqueue / wp_add_inline_style / wp_add_inline_script APIs instead of raw &lt;style&gt;/&lt;script&gt; tags. Documented all optional external services.
* Fixed: opening a Pro-only admin screen (Theme Builder, Figma Importer, Build with AI, API Settings, Search &amp; Replace) or the Elementor editor no longer triggers a "critical error" — these screens now show the upgrade page instead of trying to load code that ships only in Pro.

= 2.1.9 =
* Compliance & security hardening for the WordPress.org build: removed the licensing/update client, all Pro-module loaders, the Native Pages HTML renderer, the CPT Builder, per-page custom CSS/JS, and the raw header/body/footer code fields from the free build (these live only in the separate Pro plugin). Bundled/removed remote library calls, hardened API-key encryption, sanitised nonce/referer inputs, escaped JSON-LD output, moved the admin menu below the core items, and documented all optional external services.

= 2.1.8 =
* First public release. 45 free Elementor widgets, dynamic tags and visibility conditions, plus the free Menu Builder, Site Styles, Schema Markup, Marketing & SEO, Media Converter, Wrapper Link and Maintenance Mode modules — every widget and module is active by default, nothing is capped, and no license is needed.
* Pro adds the Theme, Popup and WooCommerce builders, the CPT / CCT / Query / Relations data engine, and AI page building through your own Claude, Cursor or VS Code subscription over MCP.
