{"id":278805,"date":"2026-10-16T06:12:46","date_gmt":"2026-10-16T06:12:46","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/event-tracker-pro\/"},"modified":"2026-10-16T06:54:32","modified_gmt":"2026-10-16T06:54:32","slug":"nexus-lead-suite","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/nexus-lead-suite\/","author":23410940,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.2.18","stable_tag":"1.2.18","tested":"7.1.3","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"Nexus Lead Suite","header_author":"Nexus Lead Suite","header_description":"A high-performance, all-in-one lead generation and user analytics suite with a modern admin experience.","assets_banners_color":"bbc6d3","last_updated":"2026-10-16 06:54:32","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/nexus-lead-suite\/","header_author_uri":"https:\/\/github.com\/Mostafijemon24","rating":0,"author_block_rating":0,"active_installs":0,"downloads":48,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq"],"tags":{"1.2.18":{"tag":"1.2.18","author":"mostafijemon","date":"2026-10-16 06:54:32","revision":3749809}},"upgrade_notice":[],"ratings":[],"assets_icons":[],"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3749828,"resolution":"1544x500","location":"assets","locale":"","width":2172,"height":724}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.2.18"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Dashboard and Activities overview (add an actual plugin screenshot before submission).","2":"Compatibility: fixed a fatal parse error on PHP 7.4\/7.x by renaming the reserved-word namespace segment <code>Public<\/code> to <code>Frontend<\/code> (the plugin now loads on its declared minimum PHP 7.4).","3":"Plugin Check: <code>Tested up to<\/code> set to 7.1; removed redundant <code>str_starts_with<\/code>\/<code>str_contains<\/code>\/<code>str_ends_with<\/code> polyfills (WordPress core has provided these since 5.9 and the plugin requires 6.2+).","4":"Plugin Check: documented the Cloudflare Turnstile verification endpoint and widget script as a required, opt-in, disclosed External Service (they cannot be self-hosted).","5":"Security (WordPress.org review): email templates can no longer store or send arbitrary CSS\/JavaScript. <code>&lt;style&gt;<\/code>\/<code>&lt;script&gt;<\/code> blocks are stripped on every save, import, and send path; legitimate inline styling (filtered by WordPress <code>safecss<\/code>) still works.","6":"Security: full-site import now runs imported email templates through the same allowlist, so an uploaded bundle cannot reintroduce active content.","7":"Dependency (WordPress.org review): removed the bundled, unused Select2 4.1.0-rc.0 release candidate and its dead CSS slices (they were never enqueued; no functionality change).","8":"Naming (WordPress.org review): renamed the SMTP OAuth state transient prefix from <code>nls_smtp_oauth_<\/code> to <code>nexulesuite_smtp_oauth_<\/code> for a consistent plugin-specific prefix.","9":"Docs: rebuild instructions now use the human-readable source bundled inside the package (no external clone required); corrected the installation directory name.","10":"WordPress.org review: made the Source Code GitHub repository public and confirmed admin\/src is reachable.","11":"WordPress.org review: fixed Voyage AI Terms\/Privacy URLs (now \/tos and \/privacy).","12":"readme.txt: refreshed AI provider legal links (DeepSeek, Groq, Mistral, xAI) to current working URLs.","13":"Language switcher: use local Unicode flag emoji instead of loading images from flagcdn.com.","14":"Admin: Visual Editor toggle knob now slides when enabled (inline switch styles).","15":"Visual Editor: ignore WP admin bar, open popups, chat\/a11y docks; only target page content.","16":"Admin Analytics: restore Visual Editor toggle (enable front-end visual editing from the Activities screen).","17":"SMTP OAuth: load PHPMailer\u2019s OAuthTokenProvider (WordPress does not) so Gmail XOAUTH2 actually runs \u2014 fixes \u201cCould not authenticate\u201d + misleading 221 reply.","18":"SMTP test: prefer real auth error lines over connection-close chatter.","19":"SMTP test: clearer OAuth auth-failure hints; capture sanitized Gmail server reply when login is rejected.","20":"SMTP Gmail preset uses port 587\/TLS (hosts often block 465); clearer \u201ccould not connect\u201d host-firewall hint.","21":"SMTP admin: .local OAuth warning only when redirect URI host is actually private.","22":"SMTP: never fall back to PHP mail() on OAuth\/SMTP errors (fixes \u201cCall to undefined function PHPMailer\\PHPMailer\\mail()\u201d).","23":"SMTP: Disconnect via REST (fixes \u201cThe link you followed has expired\u201d).","24":"SMTP test: clear error when Default mail() is disabled on the host.","25":"SMTP OAuth: treat Connected only when refresh token decrypts; clearer test errors (token\/salt\/auth\/host).","26":"SMTP OAuth: pin From\/Username to the authorized account; probe access token before test send.","27":"SMTP test: richer PHPMailer failure details in the admin UI.","28":"Form Builder: Submit Button Text editable under Appearance \u2192 Colors \u2192 Submit Button (simple forms).","29":"SMTP OAuth: Authorize starts via REST with a fresh consent URL (fixes \u201cThe link you followed has expired\u201d).","30":"SMTP OAuth: warn when redirect URI uses .local \/ private hosts; optional <code>nexulesuite_SMTP_OAUTH_REDIRECT_URI<\/code> override.","31":"Acc &amp; Lang: dock layout controls (position, offset, size, icon size, gap, order, display conditions, live preview) stay available when Accessibility is off, for Live Chat \/ Language \/ Custom buttons.","32":"Live Chat: removed the legacy corner floating bubble \u2014 chat FAB lives only in the Acc &amp; Lang dock and respects Display conditions.","33":"Live Chat: dock Icon size uses Acc &amp; Lang <code>buttonIconSize<\/code> on the frontend (preview and site stay in sync).","34":"AI chat: custom FAQ answers and bot replies turn bare http(s) URLs into clickable links.","35":"AI \u2192 Live Chat: Chat header fields (title, status badge, greeting); Icon size removed from Button style (use Acc &amp; Lang).","36":"AI \u2192 Live Chat: restored Chat header fields (title, status badge, greeting text).","37":"General settings API: chat header \/ styling keys support partial updates.","38":"Acc &amp; Lang: single \u201cEnable Live Chat\u201d toggle (default off); chat can show in the Acc &amp; Lang dock without enabling Accessibility.","39":"AI Live Chat page: removed Enable\/Dock toggles; keeps button style and embed codes.","40":"Includes 1.2.5 live-chat master-switch wiring (default off) via Acc &amp; Lang \/ Live Chat API.","41":"Live Chat: admin master switch \u201cEnable Live Chat widget\u201d (default off) so the floating chat is not shown until you turn it on.","42":"Live Chat: clearer dock-placement labels (placement only \u2014 does not enable the widget).","43":"Live Chat settings save\/load the master switch with Acc &amp; Lang \/ Live Chat API.","44":"Global fonts are now bundled with the plugin (23 families, SIL OFL 1.1, WOFF2 latin subset) and served from your own server \u2014 the feature works again with no third-party request.","45":"Accessibility reading mode gets its Lexend typeface back, also from the bundled file.","46":"Embedded-media import stops with a clear message on hosts that cannot write directly, instead of failing silently.","47":"Clearer error when a bundle contains a file type the site does not allow uploads for.","48":"Removed the admin unlock\/password gate entirely; every feature is available with no restriction.","49":"Removed all Google Fonts requests from the admin and front end; the global font feature now uses locally available fonts only.","50":"Removed the per-form Custom CSS and Custom Header\/Footer HTML fields; use the theme Customizer's Additional CSS and the block editor instead.","51":"readme.txt: full External services disclosure for every AI provider, Google Translate, and the Gmail\/Outlook OAuth mailers.","52":"Bundle import now writes only to a plugin-owned uploads folder, rejects file types WordPress would not accept, and uses WP_Filesystem.","53":"Share links are now checked against their granted sections before activity rows are returned.","54":"Late-escaped all embedded shortcode markup with wp_kses() and sanitized preview input with wp_kses_post().","55":"Replaced every inline","56":"Display conditions: Default tab applies the same rules to all four dock buttons at once.","57":"Sanitize REQUEST_URI \/ HTTP_HOST in custom-link condition matching (Plugin Check).","58":"Accessibility dock: per-button display conditions (including custom link) and per-button Button offset.","59":"Button offset Default tab applies the same X\/Y to every dock button; individual tabs for one-off positions.","60":"Dock size\/icon\/gap live preview (0\u2013100); admin layout polish for offset and position controls.","61":"Accessibility dock: live chat + custom button in the same stack; custom icon picker; desktop hover labels.","62":"Live chat dock image (round avatar on FAB + chat panel), working icon size control, online blink on rim.","63":"Dock button order: move Accessibility \/ Language \/ Live chat \/ Custom up or down in admin.","64":"Forms: Templates &amp; Submissions submenus; modern submissions report (filters menubar, CSV export, bulk delete).","65":"Forms: export\/import form configuration; dual success-message presets; success card without Success title.","66":"Admin: sidebar reorder (Analytics, Chat &amp; AI, Forms\u2026); Acc &amp; Lang label; nested Forms submenu styling.","67":"Chat AI composer: generous bottom padding so the pill input (including border) sits clearly inset above panel\/host overflow:hidden + border-radius; stronger embed\/inline host margin-bottom; embed iframe nudges parent host spacing when same-origin.","68":"Chat AI composer: pin action bar + form as flex siblings under a single scrolling messages region so overflow:hidden no longer clips the input (embed\/inline\/floating); strengthen iframe height chain.","69":"Chat AI composer: fix footer\/input bar clipped by overflow:hidden \u2014 messages area scrolls; composer stays fully visible (embed, shortcode\/inline, and floating).","70":"Chat HTML embed \/ shortcode: add 24px bottom spacing under the embed and inline panel hosts so content below has breathing room (floating bubble unchanged).","71":"Settings \u2192 AI Chatbot: Model &amp; Knowledge, FAQ &amp; Buttons, and Auto-Setup saves now persist correctly (FAQ\/actions no longer wiped by a later Model save; sparse AI payloads keep prior keys).","72":"Access gate: unlock works on all <code>nexus-lead-suite-*<\/code> admin pages (Settings, Chat &amp; AI, etc.), not only the Dashboard.","73":"Chat shortcode \/ inline embed: liquid container-responsive sizing and typography (<code>container-type<\/code> + <code>cqw<\/code> \/ <code>clamp()<\/code>), so the widget and text scale with the parent column.","74":"Chat shortcode \/ embed: liquid responsive foundation for inline chat panels.","75":"Form builder: remove individual options from select\/radio fields in the visual editor.","76":"Settings: configurable report logo max size for PDF exports with live preview.","77":"Admin: plugin version shown on the Settings page.","78":"Activities: improved tracking with conditional popup filtering so unrelated popup events are not logged.","79":"Notifications: email alerts when tracked elements receive clicks (Activity Notifier).","80":"Labels: clearer Action Name and Interaction labels in the admin timeline.","81":"Visual Editor: click tracking reliability fixes on the front end.","82":"Access gate: PHPCS compliance and password-toggle script hardening.","83":"Security: all dynamic output is escaped via wp_kses() with a form-aware allowlist, so forms, popups, SVG icons and data-* attributes keep working while scripts are stripped; removed an unused wp-admin core-file include.","84":"i18n: restored the text domain to the plugin slug (nexus-lead-suite) as required by WordPress.","85":"Internal: unified all plugin-owned identifiers (functions, hooks, options, REST namespace, CSS classes\/variables, JS objects, data attributes) under a single prefix; admin app updated to match.","86":"Plugin Check \/ WordPress.org: resolved TextDomainMismatch and EscapeOutput.OutputNotEscaped findings.","87":"Popups: Pop-Up Simulator preview (React portal, live heading\/body sync, desktop\/tablet\/mobile frame).","88":"Settings: full site backup export via REST (<code>\/settings\/full-export<\/code>) \u2014 menu items, popups, emails, forms, settings, activities, and optional embedded media.","89":"Settings: full restore import via REST (<code>\/settings\/full-import<\/code>) with loading overlay and success confirmation card.","90":"Settings: fix import loader crash (<code>Cannot read properties of null (reading 'key')<\/code>).","91":"Data bundle: export manifest (<code>bundle_manifest<\/code>) summarizing included sections and counts.","92":"Visual Editor: fix save reliability (hover outline \/ snapshotOuterHtml).","93":"Visual Editor: save success card modal after successful publish.","94":"Live chat: frontend output fix (wp_footer priority 15).","95":"Settings: global font applied across admin and public surfaces (<code>core\/class-global-font.php<\/code>).","96":"Global font: popup heading\/button, Visual Editor panel, and success card styling gaps fixed.","97":"Email Automation Builder: fix save crash (use latest templates ref instead of stale state; avoids \"Cannot read properties of undefined (reading 'map')\").","98":"Menu Items: Popup event id (manual click) dropdown selection now saves (eventName + popup:url sync, save ref fix).","99":"Menu Items: empty Display Conditions now show on all pages.","100":"Popups: fix Popup Body shortcode save (<code>sanitize_popup_body_for_storage<\/code>).","101":"Emails: default Activity notification HTML template for new templates.","102":"Form Builder: fix 1-4 column layout buttons in Insert Form Fields.","103":"Popups: fix Advanced Automation Logic settings not saving.","104":"Email Automation: fix Automation Builder settings save behavior.","105":"Popups &amp; Email Automation: fix admin screens freezing after navigation (SPA route guards and modal overlay cleanup).","106":"Popups Main Heading Editor: reliable TinyMCE loading via wp-tinymce dependency; purge stray #mce-modal-blocker overlays.","107":"Settings toggles: glider animation and layout fixes in compiled admin assets.","108":"Activities store and public tracker\/popup scripts: stability improvements aligned with admin fixes.","109":"WordPress.org Plugin Review: load scripts\/styles via wp_enqueue (popup, livechat, client gateway, access gate).","110":"Security: access gate nonce verification, webhook payload sanitization, PDF writes under uploads plugin subfolder.","111":"Prefix cleanup: unified nexulesuite_* option keys with legacy migration; nexulesuite_form shortcode (nexulesuite_form alias retained).","112":"readme.txt: External services disclosure for Google reCAPTCHA and Cloudflare Turnstile.","113":"Plugin Check: removed disallowed hidden\/compressed\/markdown artifacts from distribution; Vite manifest at assets\/admin\/vite-manifest.json.","114":"Events: Email Template dropdown uses full available width in the admin UI (CSS fix).","115":"Activities: Visual Editor toggle restored so you can enable\/disable front-end visual editing from the Activities screen.","116":"Admin sidebar: version label now reads dynamically as \"Ver X.X.X Nexus\" from the plugin version constant (<code>nexulesuite_VERSION<\/code>).","117":"Includes compiled admin bundle updates for the above UI fixes.","118":"Admin UI redesign across dashboard, settings, popups, emails, and sidebar navigation.","119":"Save confirmation and settings polish; delete actions persist correctly for popups and emails.","120":"Activities PDF export restored; assorted admin UX fixes.","121":"First stable release.","122":"Activities: visible click labels on phone\/email\/footer\/link rows; auto-popup source context (timer, scroll, exit intent); reliable mail status in admin grid.","123":"Button Classes: single-class notify-only lines; <code>popup:<\/code> \/ <code>mail:<\/code> \/ <code>notify:<\/code> prefixes; Visual Editor parser aligned with backend.","124":"Tracker &amp; popup bridge: notify dedupe, click-label capture, real-link navigation preserved after notify.","125":"WordPress Plugin Check compliance: security hardening, WPCS fixes, and Plugin Directory requirements.","126":"Sanitized form inputs, escaped outputs, REST file uploads via get_file_params(), WP_Filesystem for writable checks.","127":"Updated Tested up to: 7.0; Author URI set to GitHub profile; added .distignore for release packaging.","128":"Optional full data removal on uninstall (opt-in via option or wp-config constant).","129":"Performance: REST API PHP loads only when the REST API runs; shortcodes module skips typical wp-admin requests.","130":"Initial scaffold: custom database tables, REST bootstrap, admin build tooling."}},"plugin_section":[],"plugin_tags":[232,601,337,335,1046],"plugin_category":[36,42,58],"plugin_contributors":[252398],"plugin_business_model":[],"class_list":["post-278805","plugin","type-plugin","status-publish","hentry","plugin_tags-analytics","plugin_tags-forms","plugin_tags-lead-generation","plugin_tags-leads","plugin_tags-popups","plugin_category-analytics","plugin_category-contact-forms","plugin_category-user-management","plugin_contributors-mostafijemon","plugin_committers-mostafijemon"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/nexus-lead-suite_bbc6d3.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Nexus Lead Suite is an all-in-one WordPress lead generation, form builder, popup, and website engagement plugin for agencies, freelancers, and site owners. Capture leads, create conversion-focused forms, trigger popup campaigns, connect existing theme buttons, review visitor interactions, and send activity notifications from one central WordPress admin dashboard.<\/p>\n\n<p>Instead of assembling separate tools for basic lead capture and on-site engagement, use Nexus Lead Suite to manage key conversion workflows in one place. Its public-facing scripts use vanilla JavaScript, and the plugin is designed to keep the front-end footprint lightweight.<\/p>\n\n<h4>Lead Capture and Form Builder<\/h4>\n\n<ul>\n<li>Create lead capture forms with fields such as name, email, phone, website, address, dropdowns, radio buttons, checkboxes, dates, file uploads, terms acceptance, and more.<\/li>\n<li>Build multi-step forms with page breaks and layouts of up to four columns.<\/li>\n<li>Configure form styling, submit button text, confirmation messages, and conditional email routes.<\/li>\n<li>Add spam protection with Google reCAPTCHA or Cloudflare Turnstile when configured.<\/li>\n<li>Publish a form and embed it with the <code>[nexulesuite_form id=\"FORM_ID\"]<\/code> shortcode.<\/li>\n<li>Review form submissions, filter records, export CSV data, and bulk-delete submissions.<\/li>\n<\/ul>\n\n<h4>Popup Builder and Conversion Triggers<\/h4>\n\n<ul>\n<li>Configure popups to open after a delay, at a chosen scroll depth, on exit intent, or after a visitor clicks a connected button.<\/li>\n<li>Add a form shortcode or other supported content to a popup body.<\/li>\n<li>Preview popup layouts in desktop, tablet, and mobile frames before publishing.<\/li>\n<li>Use the Auto Popup setting to enable or disable automatic popup triggers.<\/li>\n<\/ul>\n\n<h4>Smart Buttons and Existing Theme Buttons<\/h4>\n\n<ul>\n<li>Organize smart buttons into groups and configure labels, URLs, icons, styling, priorities, and display conditions.<\/li>\n<li>Connect existing theme buttons or links using Button Classes rules such as <code>popup:<\/code>, <code>mail:<\/code>, and <code>notify:<\/code>.<\/li>\n<li>Use supported button events to open a popup or trigger an activity notification without rebuilding the site's theme buttons.<\/li>\n<\/ul>\n\n<h4>Website Analytics and Activity Reports<\/h4>\n\n<ul>\n<li>Review an Activities timeline covering supported interactions such as clicks, scroll milestones, popup events, form submissions, and notification activity.<\/li>\n<li>Track phone-link and email-link clicks as separate events.<\/li>\n<li>Filter activity records and export PDF reports for client communication and internal review.<\/li>\n<li>Use the Visual Editor from the Activities area to inspect supported front-end elements and configure interaction tracking.<\/li>\n<li>Create optional, time-limited client report links and choose which supported report sections each link can access.<\/li>\n<\/ul>\n\n<h4>Email Notifications and SMTP<\/h4>\n\n<ul>\n<li>Configure HTML email templates for supported activity notifications and use available merge tags.<\/li>\n<li>Send site email through the default PHP mailer, Gmail\/Google Workspace OAuth, Microsoft 365\/Outlook OAuth, or a custom SMTP server.<\/li>\n<li>Send a test email from the SMTP settings to check the configured delivery route.<\/li>\n<li>Connect form submissions to a webhook URL that you configure.<\/li>\n<\/ul>\n\n<h4>Accessibility, Language, and Live Chat Dock<\/h4>\n\n<ul>\n<li>Add a configurable front-end dock for accessibility tools, a language switcher, live chat, and custom links.<\/li>\n<li>Adjust dock position, button order, size, spacing, offsets, and display conditions.<\/li>\n<li>When enabled, accessibility tools include options such as text resizing, contrast modes, link highlighting, reduced animation, reading support, and text-to-speech.<\/li>\n<li>Enable the language switcher to load Google Website Translator.<\/li>\n<li>Enable live chat in the dock and configure its supported header and greeting settings.<\/li>\n<\/ul>\n\n<h4>Optional AI Chatbot and Knowledge Base<\/h4>\n\n<ul>\n<li>Optionally connect an AI chatbot to supported providers, or point it to a self-hosted FastAPI and Ollama server that you control.<\/li>\n<li>Train the knowledge base using supported text from published posts, pages, and products.<\/li>\n<li>Configure FAQs, a system prompt, and supported assistant tools for knowledge search and lead capture.<\/li>\n<li>AI features are disabled by default and require you to configure a provider or your own server.<\/li>\n<\/ul>\n\n<h4>Settings Export and Restore<\/h4>\n\n<ul>\n<li>Export supported plugin settings and configuration into a JSON bundle.<\/li>\n<li>Restore supported configuration through the import feature.<\/li>\n<li>Optionally include supported media files in an export bundle.<\/li>\n<\/ul>\n\n<h4>Privacy, Performance, and Control<\/h4>\n\n<ul>\n<li>Public-facing scripts use vanilla JavaScript rather than a front-end JavaScript framework.<\/li>\n<li>The plugin does not contact the author's servers and does not include author telemetry.<\/li>\n<li>Third-party services are contacted only when you enable the relevant feature and configure it. Review the External services section below for details.<\/li>\n<li>Form submissions are retained for the configured retention period; by default, records older than 30 days are deleted by the daily cleanup task.<\/li>\n<li>Uninstalling the plugin preserves its data by default. You can explicitly opt in to data removal using the instructions in the Data removal section.<\/li>\n<\/ul>\n\n<p>Nexus Lead Suite is designed for WordPress site owners who want lead generation forms, popup campaigns, visitor interaction tracking, email notifications, client activity reports, accessibility controls, and optional AI chat in one plugin.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin can connect to the third-party services listed below. <strong>None of them are contacted unless you explicitly enable the matching feature and enter your own credentials.<\/strong> With a default installation the plugin makes no outbound requests at all.<\/p>\n\n<h4>Google reCAPTCHA<\/h4>\n\n<p>When reCAPTCHA is enabled on a form, the visitor's browser loads Google's reCAPTCHA script and sends a response token to your WordPress site on form submit. Your server then sends that token (and your site\/secret keys) to Google's verification API to confirm the submission is not automated spam.<\/p>\n\n<ul>\n<li>Service: Google reCAPTCHA (Google LLC)<\/li>\n<li>Endpoints: https:\/\/www.google.com\/recaptcha\/<\/li>\n<li>Data sent: reCAPTCHA response token, site key, secret key (server-side), and the visitor IP address as required by Google's API<\/li>\n<li>When: on page load and on form submit, only on forms where you enabled reCAPTCHA<\/li>\n<li>Terms of Service: https:\/\/policies.google.com\/terms<\/li>\n<li>Privacy Policy: https:\/\/policies.google.com\/privacy<\/li>\n<\/ul>\n\n<h4>Cloudflare Turnstile<\/h4>\n\n<p>When Turnstile is enabled on a form, the visitor's browser loads Cloudflare's Turnstile widget and sends a response token to your WordPress site on form submit. Your server then sends that token (and your site\/secret keys) to Cloudflare's siteverify endpoint to validate the submission.<\/p>\n\n<ul>\n<li>Service: Cloudflare Turnstile (Cloudflare, Inc.)<\/li>\n<li>Endpoints: https:\/\/challenges.cloudflare.com\/<\/li>\n<li>Data sent: Turnstile response token, site key, secret key (server-side), and the visitor IP address as required by Cloudflare's API<\/li>\n<li>When: on page load and on form submit, only on forms where you enabled Turnstile<\/li>\n<li>Terms of Service: https:\/\/www.cloudflare.com\/website-terms\/<\/li>\n<li>Privacy Policy: https:\/\/www.cloudflare.com\/privacypolicy\/<\/li>\n<\/ul>\n\n<h4>Google Website Translator<\/h4>\n\n<p>If you turn on the language switcher in Accessibility &amp; Language settings, the visitor's browser loads Google's Website Translator widget so page text can be machine-translated. Translation is performed on Google's servers and cannot be done locally by the plugin.<\/p>\n\n<ul>\n<li>Service: Google Website Translator (Google LLC)<\/li>\n<li>Endpoints: https:\/\/translate.google.com\/translate_a\/element.js<\/li>\n<li>Data sent: the page text the visitor asks to translate, plus the request metadata Google's widget collects (IP address, user agent)<\/li>\n<li>When: only on front-end page views, and only while the language switcher setting is enabled<\/li>\n<li>Terms of Service: https:\/\/policies.google.com\/terms<\/li>\n<li>Privacy Policy: https:\/\/policies.google.com\/privacy<\/li>\n<\/ul>\n\n<h4>AI chat providers (optional AI Chatbot feature)<\/h4>\n\n<p>The AI Chatbot is disabled by default. If you enable it and choose a provider in Settings -&gt; AI Chatbot, your server sends chat requests to that provider's API using the API key you supply. The provider generates the reply and, where supported, the embedding vectors used to search your own site content; this processing cannot be performed locally by the plugin.<\/p>\n\n<p>Data sent on each request: the visitor's message, recent conversation turns, the system prompt you configured, and matching excerpts of your own published content. When training the knowledge base, the text of your published posts, pages and products is sent to the selected embedding provider. Requests are made only while the AI Chatbot is enabled and a provider and key are configured. No data is sent to any provider you have not selected.<\/p>\n\n<p>You select exactly one chat provider (and optionally one embedding provider) from:<\/p>\n\n<ul>\n<li>OpenAI (OpenAI, L.L.C.) \u2013 https:\/\/api.openai.com\/v1 \u2013 Terms: https:\/\/openai.com\/policies\/terms-of-use \u2013 Privacy: https:\/\/openai.com\/policies\/privacy-policy<\/li>\n<li>Anthropic Claude (Anthropic PBC) \u2013 https:\/\/api.anthropic.com\/v1 \u2013 Terms: https:\/\/www.anthropic.com\/legal\/consumer-terms \u2013 Privacy: https:\/\/www.anthropic.com\/legal\/privacy<\/li>\n<li>Google Gemini (Google LLC) \u2013 https:\/\/generativelanguage.googleapis.com\/v1beta \u2013 Terms: https:\/\/ai.google.dev\/gemini-api\/terms \u2013 Privacy: https:\/\/policies.google.com\/privacy<\/li>\n<li>Groq (Groq, Inc.) \u2013 https:\/\/api.groq.com\/openai\/v1 \u2013 Terms: https:\/\/groq.com\/terms-of-use \u2013 Privacy: https:\/\/groq.com\/privacy-policy<\/li>\n<li>DeepSeek (Hangzhou DeepSeek Artificial Intelligence Co., Ltd.) \u2013 https:\/\/api.deepseek.com\/v1 \u2013 Terms: https:\/\/cdn.deepseek.com\/policies\/en-US\/deepseek-open-platform-terms-of-service.html \u2013 Privacy: https:\/\/cdn.deepseek.com\/policies\/en-US\/deepseek-privacy-policy.html<\/li>\n<li>Mistral AI (Mistral AI SAS) \u2013 https:\/\/api.mistral.ai\/v1 \u2013 Terms: https:\/\/legal.mistral.ai\/terms \u2013 Privacy: https:\/\/legal.mistral.ai\/terms\/privacy-policy<\/li>\n<li>Together AI (Together Computer, Inc.) \u2013 https:\/\/api.together.xyz\/v1 \u2013 Terms: https:\/\/www.together.ai\/terms-of-service \u2013 Privacy: https:\/\/www.together.ai\/privacy<\/li>\n<li>OpenRouter (OpenRouter, Inc.) \u2013 https:\/\/openrouter.ai\/api\/v1 \u2013 Terms: https:\/\/openrouter.ai\/terms \u2013 Privacy: https:\/\/openrouter.ai\/privacy<\/li>\n<li>xAI Grok (X.AI LLC) \u2013 https:\/\/api.x.ai\/v1 \u2013 Terms: https:\/\/x.ai\/legal\/terms-of-service-enterprise \u2013 Privacy: https:\/\/x.ai\/legal\/privacy-policy<\/li>\n<li>Voyage AI (Voyage AI Innovations, Inc., embeddings only) \u2013 https:\/\/api.voyageai.com\/v1 \u2013 Terms: https:\/\/www.voyageai.com\/tos \u2013 Privacy: https:\/\/www.voyageai.com\/privacy<\/li>\n<\/ul>\n\n<p>Alternatively you may point the AI Chatbot at a self-hosted Nexus AI Server (FastAPI + Ollama) running on infrastructure you control. In that mode the plugin sends the same data only to the base URL you enter; no third party is involved.<\/p>\n\n<h4>Google Gmail \/ Workspace SMTP (OAuth 2.0)<\/h4>\n\n<p>If you choose the Gmail mailer in Settings -&gt; SMTP, the plugin sends outbound site email through Google's servers and uses Google's OAuth 2.0 endpoints to obtain and refresh an access token with the client ID and secret you supply.<\/p>\n\n<ul>\n<li>Service: Google Gmail API \/ OAuth 2.0 (Google LLC)<\/li>\n<li>Endpoints: https:\/\/accounts.google.com\/o\/oauth2\/v2\/auth, https:\/\/oauth2.googleapis.com\/token, https:\/\/mail.google.com\/<\/li>\n<li>Data sent: your OAuth client ID and secret, authorization and refresh tokens, and the contents of the emails your site sends<\/li>\n<li>When: only while the Gmail mailer is enabled and connected<\/li>\n<li>Terms of Service: https:\/\/policies.google.com\/terms<\/li>\n<li>Privacy Policy: https:\/\/policies.google.com\/privacy<\/li>\n<\/ul>\n\n<h4>Microsoft 365 \/ Outlook SMTP (OAuth 2.0)<\/h4>\n\n<p>If you choose the Outlook mailer in Settings -&gt; SMTP, the plugin sends outbound site email through Microsoft's servers and uses Microsoft's OAuth 2.0 endpoints to obtain and refresh an access token with the client ID and secret you supply.<\/p>\n\n<ul>\n<li>Service: Microsoft 365 \/ Outlook (Microsoft Corporation)<\/li>\n<li>Endpoints: https:\/\/login.microsoftonline.com\/common\/oauth2\/v2.0\/authorize, https:\/\/login.microsoftonline.com\/common\/oauth2\/v2.0\/token, https:\/\/outlook.office.com\/<\/li>\n<li>Data sent: your OAuth client ID and secret, authorization and refresh tokens, and the contents of the emails your site sends<\/li>\n<li>When: only while the Outlook mailer is enabled and connected<\/li>\n<li>Terms of Service: https:\/\/www.microsoft.com\/en-us\/servicesagreement<\/li>\n<li>Privacy Policy: https:\/\/privacy.microsoft.com\/privacystatement<\/li>\n<\/ul>\n\n<h4>Your own SMTP server and webhook endpoints<\/h4>\n\n<p>Any custom SMTP host, or any CRM \/ webhook URL you enter in the form or global settings, is an endpoint you choose and control. The plugin POSTs the sanitized form submission payload only to URLs you have entered yourself. It is your responsibility to ensure those destinations comply with your privacy policy.<\/p>\n\n<p>The plugin does not contact the author's servers, does not include analytics or telemetry, and does not load fonts or flag images from third-party CDNs. Language-switcher flags use local Unicode emoji. All webfonts ship inside the plugin (assets\/fonts\/) under the SIL Open Font License 1.1 and are served from your own site.<\/p>\n\n<h3>Source Code<\/h3>\n\n<p>The WordPress admin single-page app is distributed as a production build:<\/p>\n\n<ul>\n<li><code>assets\/admin\/js\/main.js<\/code> \u2014 JavaScript bundle (minified; built with Vite and React)<\/li>\n<li><code>assets\/admin\/css\/main.css<\/code> \u2014 compiled styles (built with Vite)<\/li>\n<\/ul>\n\n<p>The complete human-readable source (JSX components, styles, and build configuration) is shipped <strong>inside this plugin package<\/strong> and is sufficient to rebuild every compiled asset without any external download:<\/p>\n\n<ul>\n<li><code>admin\/src\/<\/code> \u2014 all React\/JSX components and styles<\/li>\n<li><code>admin\/package.json<\/code> \u2014 exact build dependencies<\/li>\n<li><code>admin\/vite.config.js<\/code> \u2014 build configuration<\/li>\n<\/ul>\n\n<p>Public front-end scripts under <code>public\/js\/<\/code> are already unminified.<\/p>\n\n<p>The same source is also mirrored in the project's public repository: https:\/\/github.com\/Mostafijemon24\/Nexus-Lead-Suite<\/p>\n\n<p>To rebuild the admin assets from the source included in this package:<\/p>\n\n<ol>\n<li><code>cd admin<\/code> (inside the extracted plugin folder)<\/li>\n<li>Run <code>npm ci<\/code><\/li>\n<li>Build for production: <code>npm run build<\/code><\/li>\n<li>Output is written to <code>assets\/admin\/js\/main.js<\/code> and <code>assets\/admin\/css\/main.css<\/code> (see <code>admin\/vite.config.js<\/code>).<\/li>\n<\/ol>\n\n<p>For local development with hot reload, run <code>npm run dev<\/code> and add <code>define( 'nexulesuite_VITE_DEV', true );<\/code> to <code>wp-config.php<\/code> (see <code>admin\/class-admin-app.php<\/code>).<\/p>\n\n<h3>Data removal<\/h3>\n\n<p>The optional uninstall cleanup removes custom tables (<code>wp_nexulesuite_interactions<\/code>, <code>wp_nexulesuite_submissions<\/code>), plugin options (forms, settings, SMTP, migrations, etc.), and transients whose names start with <code>nexulesuite_<\/code>. Uploaded media files are not deleted automatically.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to the <code>\/wp-content\/plugins\/nexus-lead-suite<\/code> directory, or install the plugin through the WordPress plugins screen directly.<\/li>\n<li>Activate the plugin through the 'Plugins' screen in WordPress.<\/li>\n<li>Use the Nexus Lead Suite menu in the admin area to configure the plugin.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20nexus%20lead%20suite%20work%20with%20any%20wordpress%20theme%3F\"><h3>Does Nexus Lead Suite work with any WordPress theme?<\/h3><\/dt>\n<dd><p>The plugin is designed to work with WordPress themes. Public assets are loaded where needed to help reduce unnecessary front-end scripts and theme conflicts. As with any plugin, test your site's specific theme and plugin combination before deploying changes to a production site.<\/p><\/dd>\n<dt id=\"how%20do%20i%20display%20a%20form%20on%20a%20page%3F\"><h3>How do I display a form on a page?<\/h3><\/dt>\n<dd><p>Create and publish a form under Nexus -&gt; Forms, copy its shortcode, and add it to a page, post, supported template, or popup body:<\/p>\n\n<pre><code>[nexulesuite_form id=\"FORM_ID\"]\n<\/code><\/pre>\n\n<p>Replace <code>FORM_ID<\/code> with the ID of your published form. An unpublished form or an empty ID will not render a form.<\/p><\/dd>\n<dt id=\"why%20is%20my%20form%20not%20appearing%3F\"><h3>Why is my form not appearing?<\/h3><\/dt>\n<dd><p>Check that the form is published and that the shortcode contains the correct form ID. If the form uses Google reCAPTCHA or Cloudflare Turnstile, verify that the relevant service is enabled and its keys are configured correctly.<\/p><\/dd>\n<dt id=\"how%20do%20i%20trigger%20a%20popup%3F\"><h3>How do I trigger a popup?<\/h3><\/dt>\n<dd><p>Configure the popup trigger under Nexus -&gt; Popups. Automatic triggers such as delay, scroll, and exit intent also require the Enable Auto Popup setting to be enabled. For a manual-click popup, connect the popup event name to the relevant button or configure a supported Button Classes rule.<\/p><\/dd>\n<dt id=\"why%20does%20my%20live%20chat%20widget%20not%20appear%3F\"><h3>Why does my live chat widget not appear?<\/h3><\/dt>\n<dd><p>Enable Live Chat in the Accessibility &amp; Language (Acc &amp; Lang) dock settings. Live chat appears in that dock; the plugin does not use a separate legacy floating chat bubble. Check the dock's display conditions and ensure the chat feature is enabled.<\/p><\/dd>\n<dt id=\"can%20i%20connect%20my%20existing%20theme%20buttons%3F\"><h3>Can I connect my existing theme buttons?<\/h3><\/dt>\n<dd><p>Yes. Use the Button Classes setting to associate supported theme button classes with popup or notification actions. Follow the documented line format and prefixes such as <code>popup:<\/code>, <code>mail:<\/code>, and <code>notify:<\/code>.<\/p><\/dd>\n<dt id=\"can%20i%20send%20website%20email%20through%20gmail%20or%20outlook%3F\"><h3>Can I send website email through Gmail or Outlook?<\/h3><\/dt>\n<dd><p>Yes. Configure the Gmail\/Google Workspace or Microsoft 365\/Outlook OAuth mailer in Settings -&gt; SMTP \/ Email. You must supply the required OAuth credentials and authorize the account. You can also configure a custom SMTP server or use the default PHP mailer where supported.<\/p><\/dd>\n<dt id=\"does%20the%20ai%20chatbot%20send%20data%20to%20an%20external%20provider%3F\"><h3>Does the AI chatbot send data to an external provider?<\/h3><\/dt>\n<dd><p>The AI chatbot is disabled by default. If you enable it and select an external provider, the plugin sends the request data described in the External services section to that provider. Alternatively, you can configure a self-hosted AI server and direct requests to the base URL you control. Review the selected provider's terms and privacy policy before enabling the feature.<\/p><\/dd>\n<dt id=\"how%20long%20are%20form%20submissions%20stored%3F\"><h3>How long are form submissions stored?<\/h3><\/dt>\n<dd><p>By default, submissions older than 30 days are deleted by a daily cleanup task. The retention period can be adjusted with the <code>nexulesuite_submission_retention_days<\/code> filter. Make sure your site's privacy policy accurately describes your chosen retention settings.<\/p><\/dd>\n<dt id=\"does%20uninstalling%20the%20plugin%20delete%20leads%20and%20settings%3F\"><h3>Does uninstalling the plugin delete leads and settings?<\/h3><\/dt>\n<dd><p>No. By default, uninstalling leaves plugin database tables and options in place to avoid accidental data loss. To opt in to data removal, follow the instructions in the Data removal section before deleting the plugin. Uploaded media files are not automatically deleted.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20contact%20the%20developer%27s%20servers%20or%20load%20third-party%20fonts%3F\"><h3>Does the plugin contact the developer's servers or load third-party fonts?<\/h3><\/dt>\n<dd><p>No developer-server telemetry is included, and the plugin does not load its bundled webfonts from a third-party font CDN. Optional integrations such as reCAPTCHA, Turnstile, Google Website Translator, AI providers, Gmail\/Outlook OAuth, your configured SMTP server, and your chosen webhook endpoints communicate with those services only when the relevant feature is enabled and configured. See External services for details.<\/p><\/dd>\n\n<\/dl>","raw_excerpt":"All-in-one lead generation and user analytics for WordPress, with a fast admin experience and a lightweight public footprint.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/278805","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=278805"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/mostafijemon"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=278805"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=278805"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=278805"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=278805"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=278805"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=278805"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}