[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fhcfp4acnYRsZ-L5_16ZQHqSDQPfcPzq_wEr9Ay540So":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"vulnerabilities":28,"developer":29,"crawl_stats":26,"alternatives":36,"analysis":134,"fingerprints":202},"theme-designer","Theme Designer","1.1.1","Helmut Wandl","https:\u002F\u002Fprofiles.wordpress.org\u002Fehtmlu\u002F","\u003Cp>\u003Cstrong>Theme Designer\u003C\u002Fstrong> is a powerful WordPress plugin that allows you to create and manage block themes (FSE themes) without writing a single line of code. It provides an intuitive interface to configure all theme settings that are typically defined in the \u003Ccode>theme.json\u003C\u002Fcode> file.\u003C\u002Fp>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Visual Theme Builder\u003C\u002Fstrong>: Create new themes with a simple form interface\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Complete Settings Management\u003C\u002Fstrong>: Configure all theme.json settings through an intuitive admin panel\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Theme Metadata\u003C\u002Fstrong>: Set theme name, description, author, version, and other metadata\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Screenshot Management\u003C\u002Fstrong>: Upload and manage theme screenshots\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Color Palettes\u003C\u002Fstrong>: Define custom color palettes and gradients\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Typography Settings\u003C\u002Fstrong>: Configure font families, sizes, and fluid typography\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Spacing & Layout\u003C\u002Fstrong>: Set up spacing scales, layout sizes, and user controls\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Border & Shadow\u003C\u002Fstrong>: Define border styles, radius, and shadow presets\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Background Controls\u003C\u002Fstrong>: Configure background image and positioning options\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Theme Export\u003C\u002Fstrong>: Download your themes as installable ZIP files\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Theme Duplication\u003C\u002Fstrong>: Easily duplicate existing themes as starting points\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WordPress Defaults\u003C\u002Fstrong>: Choose to include or exclude WordPress default settings\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>What Gets Created\u003C\u002Fh4>\n\u003Cp>When you create a theme with Theme Designer, it automatically generates:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Theme Directory Structure\u003C\u002Fstrong>: Complete theme folder with all necessary files\u003C\u002Fli>\n\u003Cli>\u003Cstrong>style.css\u003C\u002Fstrong>: Theme header with all metadata\u003C\u002Fli>\n\u003Cli>\u003Cstrong>theme.json\u003C\u002Fstrong>: Complete configuration file with all your settings\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Templates\u003C\u002Fstrong>: Basic \u003Ccode>index.html\u003C\u002Fcode> template for the main content area\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Template Parts\u003C\u002Fstrong>: \u003Ccode>header.html\u003C\u002Fcode> and \u003Ccode>footer.html\u003C\u002Fcode> parts for site structure\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Screenshot\u003C\u002Fstrong>: Theme preview image (if uploaded)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How It Works\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Open Theme Designer\u003C\u002Fstrong>: In the admin panel go to “Design” \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> “Theme Designer”\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Create Theme\u003C\u002Fstrong>: Fill out the theme metadata form\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Configure Settings\u003C\u002Fstrong>: Use the visual interface to set up colors, typography, spacing, etc.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Preview & Test\u003C\u002Fstrong>: Your theme is immediately available in the WordPress admin\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Perfect For\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Developers\u003C\u002Fstrong> who want to quickly prototype themes\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Designers\u003C\u002Fstrong> who prefer visual tools over code\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Agencies\u003C\u002Fstrong> creating custom themes for clients\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WordPress users\u003C\u002Fstrong> who want to create their own themes\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Theme shops\u003C\u002Fstrong> looking to streamline theme creation\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Integration with Site Editor\u003C\u002Fh4>\n\u003Cp>Themes created with Theme Designer work seamlessly with the WordPress Site Editor. You can:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Customize templates and template parts visually\u003C\u002Fli>\n\u003Cli>Add custom styles through the Site Editor interface\u003C\u002Fli>\n\u003Cli>Override theme settings on a per-page basis\u003C\u002Fli>\n\u003Cli>Create additional templates and parts as needed\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Note\u003C\u002Fstrong>: Settings defined in the Site Editor take precedence over theme settings, even after saving new values in the theme.\u003C\u002Fp>\n\u003Ch4>Requirements\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Block theme support enabled\u003C\u002Fli>\n\u003Cli>Write permissions for the themes directory\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>More from the same author\u003C\u002Fh3>\n\u003Cp>Take a look at \u003Ca href=\"https:\u002F\u002Fwww.wppeak.com\u002F\" rel=\"nofollow ugc\">www.wppeak.com\u003C\u002Fa>\u003C\u002Fp>\n","Create and manage block themes with an intuitive interface. No coding required - design your theme's settings through a user-friendly admin panel.",0,430,"2025-12-04T12:23:00.000Z","6.9.4","5.8","7.0",[18,19,20,21,22],"block-theme","colors","spacing","theme-builder","typography","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ftheme-designer\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftheme-designer.1.1.1.zip",100,null,"2026-03-15T15:16:48.613Z",[],{"slug":30,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":32,"avg_security_score":33,"avg_patch_time_days":34,"trust_score":33,"computed_at":35},"ehtmlu",5,300,99,7,"2026-04-04T16:21:20.414Z",[37,57,76,94,110],{"slug":38,"name":39,"version":40,"author":41,"author_profile":42,"description":43,"short_description":44,"active_installs":45,"downloaded":46,"rating":25,"num_ratings":47,"last_updated":48,"tested_up_to":14,"requires_at_least":49,"requires_php":50,"tags":51,"homepage":55,"download_link":56,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"fluid-design-system-for-elementor","Fluid Design System for Elementor","2.2.1","Artem Semkin","https:\u002F\u002Fprofiles.wordpress.org\u002Fartemsemkin\u002F","\u003Cp>\u003Cstrong>Design once. Scale everywhere.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Fluid Design System for Elementor is a small yet powerful add-on that brings fluid typography and spacing presets directly into Elementor’s interface — helping you create fully responsive designs that scale naturally across every screen size, from tiny phones to ultra-wide desktops.\u003C\u002Fp>\n\u003Cp>🎯 \u003Cem>Think of it like color presets — but for padding, font sizes, and layout gaps.\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>🎥 \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fartkrsk.github.io\u002Ffluid-design-system-for-elementor\u002Fguide\" rel=\"nofollow ugc\">Video Tutorials\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>With just a few clicks, you can:\u003Cbr \u002F>\n– Define minimum and maximum values for typography or spacing.\u003Cbr \u002F>\n– Apply those values using a new “fluid” unit inside any Elementor control.\u003Cbr \u002F>\n– Watch your design scale smoothly—no coding or media queries required.\u003Cbr \u002F>\n– Organize your presets into custom groups (e.g. “Border Radius”, “Thumbnail Sizes”) for better management.\u003C\u002Fp>\n\u003Cp>Say goodbye to manually tweaking every breakpoint. Say hello to automatic, intelligent design scaling with organized preset management.\u003C\u002Fp>\n\u003Ch3>How It Works\u003C\u002Fh3>\n\u003Cp>❓ \u003Cstrong>What Does “Fluid” Mean?\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Traditionally in Elementor, you need to set separate values for each breakpoint — for example, one font size for desktop, another for tablet, and another for mobile.\u003C\u002Fp>\n\u003Cp>While this gives some control, it has two major downsides:\u003Cbr \u002F>\n– 🧩 \u003Cstrong>It’s rigid\u003C\u002Fstrong>: You only define styles for specific screen widths, leaving awkward gaps in between where the design may not scale smoothly.\u003Cbr \u002F>\n– ⏱️ \u003Cstrong>It’s time-consuming\u003C\u002Fstrong>: Updating styles across multiple breakpoints for every section and element becomes a repetitive, manual process.\u003C\u002Fp>\n\u003Cp>💡 \u003Cstrong>Fluid Design System solves this.\u003C\u002Fstrong>\u003Cbr \u002F>\nInstead of setting fixed values for each breakpoint, you define just two—a minimum and a maximum — and the plugin automatically generates a smooth scaling behavior in between. This means:\u003Cbr \u002F>\n– One preset handles all screen sizes.\u003Cbr \u002F>\n– You get consistent design and spacing across the entire site.\u003Cbr \u002F>\n– You save time and reduce manual effort.\u003Cbr \u002F>\n– You can organize presets into groups for different projects or design systems.\u003C\u002Fp>\n\u003Cp>This plugin introduces \u003Cstrong>Fluid Units\u003C\u002Fstrong>, powered by CSS \u003Ccode>clamp()\u003C\u002Fcode> and custom presets, allowing your design to scale automatically across all screen sizes.\u003C\u002Fp>\n\u003Cp>Here’s how it works in real scenarios:\u003C\u002Fp>\n\u003Ch3>✍️ Fluid Typography Example\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Old way: 24px (mobile), 36px (tablet), 72px (desktop)\u003C\u002Fli>\n\u003Cli>Fluid way: One preset: min = 24px, max = 72px\u003C\u002Fli>\n\u003Cli>Result: Text scales smoothly and proportionally on all devices.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>📦 Fluid Spacing Example\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Old way: 40px (mobile), 80px (tablet), 160px (desktop)\u003C\u002Fli>\n\u003Cli>Fluid way: One preset: min = 40px, max = 160px\u003C\u002Fli>\n\u003Cli>Result: Section padding adjusts naturally without breakpoints.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>🔗 Fluid Gaps Example\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Gap between elements: 20px (mobile) to 60px (desktop)\u003C\u002Fli>\n\u003Cli>Result: Even spacing between containers and widgets on any screen.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>❓ \u003Cstrong>Why not Just Use \u003Ccode>vw\u003C\u002Fcode> or \u003Ccode>vh\u003C\u002Fcode> Units?\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>While viewport units like \u003Ccode>vw\u003C\u002Fcode> can scale elements based on screen width, they often lack control — your text might become unreadably small or overly large. The Fluid Design System solves this by generating \u003Ccode>clamp()\u003C\u002Fcode> values behind the scenes, so your designs stay within defined min\u002Fmax boundaries. This gives you the flexibility of responsive scaling, combined with the precision of design tokens.\u003C\u002Fp>\n\u003Cp>👉 Behind the scenes, the plugin creates CSS variables like: \u003Ccode>clamp(24px, 5vw, 72px)\u003C\u002Fcode> which Elementor then uses across typography, spacing, padding, margin, and more.\u003C\u002Fp>\n\u003Ch3>How to Use\u003C\u002Fh3>\n\u003Cp>Follow these steps to set up and use the Fluid Design System in your Elementor projects.\u003C\u002Fp>\n\u003Ch4>📐 Step 1: Configure Fluid Breakpoints\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Go to Elementor > Site Settings\u003C\u002Fli>\n\u003Cli>Navigate to the “Fluid Typography & Spacing” tab\u003C\u002Fli>\n\u003Cli>In the “Breakpoints” panel, set your:\n\u003Cul>\n\u003Cli>Minimum Screen Width (e.g., 360px for mobile)\u003C\u002Fli>\n\u003Cli>Maximum Screen Width (e.g., 1920px for desktop)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>🧰 Step 2: Create Your Presets\u003C\u002Fh4>\n\u003Col>\n\u003Cli>In the same “Fluid Typography & Spacing” tab:\n\u003Cul>\n\u003Cli>Go to “Typography Presets” to create fluid font size presets\u003C\u002Fli>\n\u003Cli>Go to “Spacing Presets” to create fluid spacing presets\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>For each preset:\n\u003Cul>\n\u003Cli>Give it a descriptive name\u003C\u002Fli>\n\u003Cli>Set minimum and maximum values\u003C\u002Fli>\n\u003Cli>Optionally set custom breakpoints for this preset\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>🎨 Step 3: Apply Your Presets\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Edit any page with Elementor\u003C\u002Fli>\n\u003Cli>In any control that supports custom units (typography, spacing, etc.):\n\u003Cul>\n\u003Cli>Select “fluid” as the unit\u003C\u002Fli>\n\u003Cli>Choose your preset from the dropdown\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Watch your design smoothly adapt to different screen sizes\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>🔧 Step 4: Fine-tune Your Design\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Use the live preview to see how your presets work\u003C\u002Fli>\n\u003Cli>Adjust preset values if needed\u003C\u002Fli>\n\u003Cli>Create additional presets for different design needs\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Why Use Fluid Design System?\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Perfect Responsiveness\u003C\u002Fstrong>: Create websites that look flawless on every device, from mobile phones to large desktop screens including all intermediate sizes\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Design Consistency\u003C\u002Fstrong>: Maintain perfect spacing and typography harmony across your entire website\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Time-Saving\u003C\u002Fstrong>: Eliminate manual breakpoint adjustments with intelligent fluid scaling\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Future-Proof\u003C\u002Fstrong>: Seamlessly integrates with Elementor’s latest features and updates\u003C\u002Fli>\n\u003Cli>\u003Cstrong>User-Friendly\u003C\u002Fstrong>: Manage everything through Elementor’s familiar interface – \u003Cstrong>no coding or CSS knowledge required\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Inline fluid values\u003C\u002Fstrong> – Set values directly in controls (“20px ~ 100px”) without visiting Site Settings\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Save as Preset\u003C\u002Fstrong> – Convert inline values into reusable presets with one click\u003C\u002Fli>\n\u003Cli>Create unlimited fluid typography and spacing presets with custom minimum and maximum values\u003C\u002Fli>\n\u003Cli>Define global breakpoints or set custom breakpoints for individual presets\u003C\u002Fli>\n\u003Cli>Real-time preview of changes in the Elementor editor\u003C\u002Fli>\n\u003Cli>Works with all Elementor widgets and elements\u003C\u002Fli>\n\u003Cli>Compatible with any WordPress theme including Elementor’s Hello theme\u003C\u002Fli>\n\u003Cli>Full support for Elementor’s responsive controls and additional breakpoints\u003C\u002Fli>\n\u003Cli>Mix different units (px, em, rem) in your presets for ultimate flexibility\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Common Use Cases\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Fluid Typography\u003C\u002Fstrong>: Create responsive headings and text that maintain perfect proportions across all devices\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Consistent Spacing\u003C\u002Fstrong>: Design section padding and margins that adapt smoothly to any screen size\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Responsive Grids\u003C\u002Fstrong>: Build fluid grid layouts with perfect spacing between elements\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Typography Scale\u003C\u002Fstrong>: Set up a complete typography system that works flawlessly everywhere\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Container Spacing\u003C\u002Fstrong>: Create fluid containers that maintain perfect proportions on all devices\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Element Gaps\u003C\u002Fstrong>: Design consistent gaps between elements that scale naturally\u003C\u002Fli>\n\u003C\u002Ful>\n","Create fluid typography & spacing presets natively in Elementor — no CSS clamp formulas, no breakpoints, just seamless responsive design.",200,2625,1,"2026-01-21T17:09:00.000Z","6.0","8.0",[52,53,54,20,22],"elementor","fluid","responsive","https:\u002F\u002Fartemsemkin.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ffluid-design-system-for-elementor.2.2.1.zip",{"slug":58,"name":59,"version":60,"author":61,"author_profile":62,"description":63,"short_description":64,"active_installs":45,"downloaded":65,"rating":25,"num_ratings":47,"last_updated":66,"tested_up_to":67,"requires_at_least":68,"requires_php":68,"tags":69,"homepage":68,"download_link":74,"security_score":75,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"parallaxer-for-elementor","Parallaxer for Elementor","1.0.2","Oooh Boi","https:\u002F\u002Fprofiles.wordpress.org\u002Fooohboi\u002F","\u003Cp>Parallaxer for Elementor brings the power of Rellax.js to your Elementor pages, allowing you to add smooth parallax scrolling effects to any widget with just a few clicks.\u003Cbr \u002F>\nBut that is not all!\u003Cbr \u002F>\nWith just one click you can apply smooth scrolling to all of your Elementor built pages. Smooth scroll is powered by the lenis.js library.\u003Cbr \u002F>\nParallaxer also brings a mini fluid system for both typography and spacing which is brought to you by utopia.fyi fluid space calculator. It means that you no longer need to maintain typography and spacing across multiple breakpoints but rather provide only the desktop values while each value between the desktop and mobile will be interpolated.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Easy to use interface in Elementor’s Advanced tab\u003C\u002Fli>\n\u003Cli>Responsive speed controls for different devices\u003C\u002Fli>\n\u003Cli>Lightweight and optimized for performance\u003C\u002Fli>\n\u003Cli>Works with any Elementor widget (Containers excluded!)\u003C\u002Fli>\n\u003Cli>Global scroll smoothing (via the User Preferences panel)\u003C\u002Fli>\n\u003Cli>Includes a mini fluid system for both typography and spacing\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How to Use\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Edit any element in Elementor\u003C\u002Fli>\n\u003Cli>Go to the Advanced tab\u003C\u002Fli>\n\u003Cli>Find the “Parallaxer” section\u003C\u002Fli>\n\u003Cli>Enable parallax and adjust settings\u003C\u002Fli>\n\u003Cli>Preview and adjust as needed\u003C\u002Fli>\n\u003C\u002Fol>\n","Add smooth parallax scrolling effects to any Elementor widget using the lightweight Rellax.js and lenis.js libraries.",2093,"2025-01-28T09:32:00.000Z","6.7.5","",[52,70,71,72,73],"fluid-spacing","fluid-typography","parallax","smooth-scroll","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fparallaxer-for-elementor.zip",92,{"slug":77,"name":78,"version":79,"author":80,"author_profile":81,"description":82,"short_description":83,"active_installs":11,"downloaded":84,"rating":11,"num_ratings":11,"last_updated":85,"tested_up_to":14,"requires_at_least":49,"requires_php":86,"tags":87,"homepage":92,"download_link":93,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"block-theme-color-switcher","Block Theme Color Switcher","1.0.6","Kadim Gültekin","https:\u002F\u002Fprofiles.wordpress.org\u002Farkenon\u002F","\u003Cp>🎨 \u003Cstrong>Unleash Your Theme’s True Colors!\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>WordPress Block Themes (Full Site Editing) are powerful, often coming with multiple style variations defined in \u003Ccode>theme.json\u003C\u002Fcode>. However, usually, you select \u003Cem>one\u003C\u002Fem> style in the editor, and that’s what visitors see.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Block Theme Color Palette Switcher\u003C\u002Fstrong> breaks this limitation. It parses your theme’s \u003Ccode>theme.json\u003C\u002Fcode> and style variations (inside the \u003Ccode>\u002Fstyles\u003C\u002Fcode> folder) to automatically generate a floating font-end menu.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fplayground.wordpress.net\u002F?plugin=block-theme-color-switcher\" rel=\"nofollow ugc\">Test with WordPress Playground\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>🚀 Who is this for?\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>👨‍💻 For Theme Developers:\u003C\u002Fstrong> Stop creating multiple demo sites for different color schemes! Install this plugin, and let your potential customers preview \u003Cstrong>every single color palette\u003C\u002Fstrong> your theme offers on a single demo site.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>👤 For Site Visitors:\u003C\u002Fstrong> Give your users control. Let them choose a look that suits their mood or accessibility needs (e.g., High Contrast vs. Pastel).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>✨ Key Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>🔌 Plug & Play:\u003C\u002Fstrong> Automatically detects palettes from \u003Ccode>theme.json\u003C\u002Fcode> and \u003Ccode>styles\u002F*.json\u003C\u002Fcode> files. No manual configuration needed.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>💾 Persistent Selection:\u003C\u002Fstrong> Uses Browser Storage (LocalStorage) to remember the user’s choice. If they leave and come back, their selected color palette remains active!\u003C\u002Fli>\n\u003Cli>\u003Cstrong>⚡ Instant Preview:\u003C\u002Fstrong> Changes CSS variables on the fly. No page reloads required.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>🛠️ Customizable UI:\u003C\u002Fstrong>\n\u003Cul>\n\u003Cli>Change the trigger button text.\u003C\u002Fli>\n\u003Cli>Position the button (Left\u002FRight).\u003C\u002Fli>\n\u003Cli>Adjust vertical spacing to avoid conflict with other chat widgets or buttons.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>🧹 Clean Reset:\u003C\u002Fstrong> Includes a “Reset” button to revert to the theme’s default colors instantly.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>🔧 How it Works\u003C\u002Fh3>\n\u003Col>\n\u003Cli>The plugin scans your active Block Theme.\u003C\u002Fli>\n\u003Cli>It extracts color definitions from \u003Ccode>settings.color.palette\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>It creates a sleek off-canvas menu on the frontend.\u003C\u002Fli>\n\u003Cli>When a user clicks a color, the plugin updates the CSS Custom Properties (Variables) on the \u003Ccode>\u003Cbody>\u003C\u002Fcode> tag instantly.\u003C\u002Fli>\n\u003C\u002Fol>\n","Front-end color palette switcher for Block Themes. Let users pick styles instantly. Perfect for theme demos & developer showcases.",1321,"2026-01-07T13:40:00.000Z","7.4",[88,89,19,90,91],"block-themes","color-palette","gutenberg","theme-colors","https:\u002F\u002Fgithub.com\u002FArkenon\u002Fblock-theme-color-switcher","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fblock-theme-color-switcher.1.0.6.zip",{"slug":95,"name":96,"version":97,"author":98,"author_profile":99,"description":100,"short_description":101,"active_installs":11,"downloaded":102,"rating":11,"num_ratings":11,"last_updated":103,"tested_up_to":104,"requires_at_least":105,"requires_php":16,"tags":106,"homepage":68,"download_link":109,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"design-tokens-manager-for-elementor","Design Tokens Manager for Elementor","1.5.1","nes07","https:\u002F\u002Fprofiles.wordpress.org\u002Fnes07\u002F","\u003Cp>\u003Cstrong>Design Tokens Manager for Elementor\u003C\u002Fstrong> gives you complete control over your Elementor design system.\u003C\u002Fp>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Bulk Editing\u003C\u002Fstrong> – Paste multiple colors\u002Ffonts at once\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Fluid Typography\u003C\u002Fstrong> – Full clamp() support for responsive sizing\u003C\u002Fli>\n\u003Cli>\u003Cstrong>ID Preservation\u003C\u002Fstrong> – Maintains token references across saves\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Two-Way Sync\u003C\u002Fstrong> – Pull from or Push to Elementor Site Settings\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Import\u002FExport\u003C\u002Fstrong> – Backup or migrate your design tokens\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Smart Tab Persistence\u003C\u002Fstrong> – Stays on your current section after saving\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WP-CLI Support\u003C\u002Fstrong> – Automate token management\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Perfect For\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Design system managers\u003C\u002Fli>\n\u003Cli>Agencies managing multiple sites\u003C\u002Fli>\n\u003Cli>Developers wanting programmatic control\u003C\u002Fli>\n\u003Cli>Anyone tired of clicking 50+ times to update colors\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Bulk Format Examples\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Colors:\u003C\u002Fstrong>\u003Cbr \u002F>\n    Primary: #FF5733\u003Cbr \u002F>\n    Secondary: #00A8E8\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Fonts:\u003C\u002Fstrong>\u003Cbr \u002F>\n    Heading: Inter, clamp(3rem, 2.5rem + 2vw, 4rem), 700, 1.2em\u003Cbr \u002F>\n    Body: Roboto, 1 rem, 400, 1.5em\u003C\u002Fp>\n\u003Ch4>Requirements\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>WordPress 5.6 or higher\u003C\u002Fli>\n\u003Cli>Elementor (free or Pro)\u003C\u002Fli>\n\u003Cli>PHP 7.0 or higher\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Additional Info\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>WP-CLI Commands:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>wp edtm export --file=tokens.json --source=kit --preserve-ids\nwp edtm import tokens.json --mode=merge\nwp edtm sync\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>GitHub:\u003C\u002Fstrong> https:\u002F\u002Fgithub.com\u002Fdani3lphp\u002Fdesign-tokens-manager-for-elementor.git\u003C\u002Fp>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>For bug reports and feature requests, please use the WordPress.org support forum.\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>Developed by nes07\u003C\u002Fp>\n","Manage Elementor Global Colors and Fonts with clamp() support, ID preservation, bulk editing, and seamless Site Settings sync.",127,"2025-12-01T07:09:00.000Z","6.8.5","5.6",[19,107,52,108,22],"design","tokens","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdesign-tokens-manager-for-elementor.1.5.1.zip",{"slug":111,"name":112,"version":113,"author":114,"author_profile":115,"description":116,"short_description":117,"active_installs":118,"downloaded":119,"rating":120,"num_ratings":121,"last_updated":122,"tested_up_to":14,"requires_at_least":123,"requires_php":16,"tags":124,"homepage":129,"download_link":130,"security_score":131,"vuln_count":132,"unpatched_count":11,"last_vuln_date":133,"fetched_at":27},"use-any-font","Use Any Font | Custom Font Uploader","6.3.14","Dnesscarkey","https:\u002F\u002Fprofiles.wordpress.org\u002Fdnesscarkey\u002F","\u003Cp>Upload any custom fonts to give your site an elegant look. Easily change fonts without CSS knowledge or select from 23,871+ predefined fonts to add to your site, including Google fonts stored on your server.\u003C\u002Fp>\n\u003Cp>Click \u003Ca href=\"https:\u002F\u002Fdineshkarki.com.np\u002Fuse-any-font\u002Fdemo\" rel=\"nofollow ugc\">HERE\u003C\u002Fa> for a Use Any Font working demo.\u003C\u002Fp>\n\u003Cp>Use Any Font lets you install custom fonts in your WordPress website. Unlike other font embed services, it doesn’t limit your font choices or store your custom fonts on a remote server. Upload any font format (ttf, otf, woff) and our font uploader auto converts it to woff2 for faster load times and compatibility across all browsers. With our easy-to-use font uploader, you can seamlessly add custom fonts and manage your site’s typography. The plugin supports self-hosted and GDPR-compliant solutions, ensuring your fonts are SEO-friendly and quickly embedded with @font-face.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Key Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Easy Font Upload, Supports all browsers : \u003C\u002Fstrong>\u003Cbr \u002F>\nUpload font in one format, all required format for browser compatibily is auto converted by our font convertor. Supports ttf, otf, woff, and woff2 font formats.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Fastest Font Load ( 30% Faster ) : \u003C\u002Fstrong>\u003Cbr \u002F>\nAutomatically convert uploaded custom fonts to compressed woff2 format with Brotli, achieving 30% faster loading.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Easy Font Assign : \u003C\u002Fstrong>\u003Cbr \u002F>\nQuickly assign uploaded font with inbuilt font assign interface. You can select pre defined html tags or assign it to custom css.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>SEO Friendly & GDPR compliant : \u003C\u002Fstrong>\u003Cbr \u002F>\nFonts embedded with @font-face CSS for quick loading and SEO benefits. Custom Fonts are stored on Your Server for Faster Loading and full GDPR compliant \u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Large Font Upload upto 25 MB : \u003C\u002Fstrong>\u003Cbr \u002F>\nSome fonts are larger in size. Our font uploader allows you to upload custom font upto 25 MB. \u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Font Variations : \u003C\u002Fstrong>\u003Cbr \u002F>\nUpload custom fonts with their various styles and weights. \u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Editor and Visual Builder Support : \u003C\u002Fstrong>\u003Cbr \u002F>\nUse uploaded custom fonts from WordPress Editor, Gutenberg Editor,\u003Cbr \u002F>\n\u003Ca href=\"http:\u002F\u002Fwww.elegantthemes.com\u002Faffiliates\u002Fidevaffiliate.php?id=39880\" title=\"custom font in Divi builder\" rel=\"nofollow ugc\">Divi Builder\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsiteorigin-panels\u002F\" title=\"Custom font in Site Origin Page Buider\" rel=\"ugc\">Site Origin Page Buider\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Felementor\u002F\" title=\"Elementor Page Builder\" rel=\"ugc\">Elementor Page Builder\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwww.wpbeaverbuilder.com\u002F?fla=2054&campaign=use-any-font\" title=\"custom font in Beaver Builder\" rel=\"nofollow ugc\">Beaver Builder\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fthemify.me\u002Fmember\u002Faff\u002Fgo\u002Fdnesscarkey\u002F?cr=aHR0cHM6Ly90aGVtaWZ5Lm1lL2J1aWxkZXI=\" title=\"custom font in Themify Builder\" rel=\"nofollow ugc\">Themify Builder\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fthemes\u002Fkadence\u002F\" title=\"custom font in Kadence Theme and Kadence Blocks\" rel=\"ugc\">Kadence Theme and Blocks\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Foxygenbuilder.com\u002F\" title=\"custom font in Oxygen Builder\" rel=\"nofollow ugc\">Oxygen Builder\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fthemes\u002Fgeneratepress\u002F\" title=\"custom font in Generate Press\" rel=\"ugc\">Generate Press\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fthemes\u002Fastra\u002F\" title=\"custom font in Astra Theme\" rel=\"ugc\">Astra Theme\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fthemes\u002Foceanwp\u002F\" title=\"custom font in Revolution Slider\" rel=\"ugc\">Ocean WP Theme\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fbricksbuilder.io\u002F\" title=\"custom font in Bricks Builder\" rel=\"nofollow ugc\">Bricks Builder\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fthemeisle.com\u002F\" title=\"custom font in themeisle neva theme\" rel=\"nofollow ugc\">Themeisle\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fbit.ly\u002F3auJKzt\" title=\"custom font in Revolution Slider\" rel=\"nofollow ugc\">Revolution Slider\u003C\u002Fa>,\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwpbakery.com\u002F\" title=\"custom font in WPBakery Page Builder\" rel=\"nofollow ugc\">WPBakery Page Builder ( Js Composer )\u003C\u002Fa>,\u003Cbr \u002F>\nMore… and any visual builder using the class. \u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Theme Compatibility : \u003C\u002Fstrong>\u003Cbr \u002F>\nCustom fonts uploaded can be directly used from Theme options panel for major themeforest themes like \u003Ca href=\"https:\u002F\u002Fbit.ly\u002F3auJKzt\" rel=\"nofollow ugc\">Avada, X Theme, Flatsome, Salient, Porto, Shopkeeper, Oshine, WPLMS Learning Management System Theme, KLEO, WoodMart, ListingPro, SimpleMag, ROSA 1, 907, Voice, Grand Restaurant, LeadEngine, Service Finder, MagPlus, Hostiko, Adifier, Puca, GreenMart, Reco, VidoRev, Halena and many more known themes. (1000+). Check out full list here.\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Language Support : \u003C\u002Fstrong>\u003Cbr \u002F>\nAssign fonts based on language with WPML and Polylang plugins.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Font Display Property : \u003C\u002Fstrong>\u003Cbr \u002F>\nCSS property managing font loading behavior in @font-face.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Support\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Visit our \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fuse-any-font\u002F\" rel=\"ugc\">Support Forum\u003C\u002Fa> for quick issue resolution.\u003C\u002Fli>\n\u003Cli>Utilize our Facebook Message widget on our website at \u003Ca href=\"https:\u002F\u002Fdineshkarki.com.np\" rel=\"nofollow ugc\">https:\u002F\u002Fdineshkarki.com.np\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Reach out via email using the form found at \u003Ca href=\"https:\u002F\u002Fdineshkarki.com.np\u002Fcontact\" rel=\"nofollow ugc\">https:\u002F\u002Fdineshkarki.com.np\u002Fcontact\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Font Conversion API Usage\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>You need API key to connect to our server for font conversion. Our server converts your font and sends it back. You can get key from \u003Ca href=\"https:\u002F\u002Fdineshkarki.com.np\u002Fuse-any-font\u002Fapi-key\" rel=\"nofollow ugc\">here\u003C\u002Fa>. You can also generate Lite \u002F Test API key from button at top of the plugin page. \u003Cstrong>Note : \u003C\u002Fstrong> Lite \u002F Test API only allow single font conversion.\u003C\u002Fli>\n\u003Cli>Use Any Font uses Font Conversion API developed by Dnesscarkey. Font conversion API helps the plugin to convert the font files in different format (woff, woff2 but not limited to) for faster loading, and multiple browser support. Plugins sends the request to Font conversion server with font files, font conversion server converts it and returns the converted files. Once the conversion is completed, font files are automatically deleted.\u003C\u002Fli>\n\u003Cli>We don’t store your fonts in our server neither any of your information except the API key details. Our server deletes the temporary file after the font upload is complete. Your font files are served from your own server.\u003C\u002Fli>\n\u003Cli>For font conversion, our plugin uses server2.dnesscarkey.org and server3.dnesscarkey.org and it is only dedicated to Use Any Font plugin.\u003C\u002Fli>\n\u003Cli>For Font Conversion API terms and condition. Please visit \u003Ca href=\"https:\u002F\u002Fdineshkarki.com.np\u002Fuse-any-font\u002Fterms-conditions\" rel=\"nofollow ugc\">here\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Installation Video\u003C\u002Fstrong>\u003Cbr \u002F>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FQzGaWIPVwEk?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Integration for Themes \u002F Plugin Developers\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>You can use \u003Cstrong>uaf_get_font_families();\u003C\u002Fstrong> function to get the list of custom fonts uploaded with Use Any Font. You can add it in your font family select box or list.\u003C\u002Fp>\n\u003Cp>\u003Cem>if (function_exists(‘uaf_get_font_families’)){\u003Cbr \u002F>\n    $uaf_font_families = uaf_get_font_families();   \u002F\u002F Returns Array\u003Cbr \u002F>\n}\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>Please do write us after integration and we will add it in our supported list and create a discount code for your users.\u003C\u002Fp>\n","Upload custom fonts with custom font uploader. Auto converts to woff2 for better performance. Self-hosted, GDPR compliant, and easy custom font plugin",200000,7221706,94,1143,"2025-12-20T04:17:00.000Z","4.0",[125,126,127,128,22],"custom-fonts","font-manager","font-uploader","google-fonts","https:\u002F\u002Fdineshkarki.com.np\u002Fuse-any-font","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fuse-any-font.6.3.14.zip",97,4,"2024-09-25 00:00:00",{"attackSurface":135,"codeSignals":174,"taintFlows":188,"riskAssessment":189,"analyzedAt":201},{"hooks":136,"ajaxHandlers":151,"restRoutes":152,"shortcodes":172,"cronEvents":173,"entryPointCount":132,"unprotectedCount":132},[137,143,147],{"type":138,"name":139,"callback":140,"file":141,"line":142},"action","admin_menu","add_admin_menu","theme-designer.php",36,{"type":138,"name":144,"callback":145,"file":141,"line":146},"admin_enqueue_scripts","enqueue_admin_scripts",37,{"type":138,"name":148,"callback":149,"file":141,"line":150},"rest_api_init","register_rest_routes",38,[],[153,160,164,168],{"namespace":154,"route":155,"methods":156,"callback":158,"permissionCallback":26,"file":141,"line":159},"theme-designer\u002Fv1","\u002Fthemes",[157],"GET","anonymous",133,{"namespace":154,"route":161,"methods":162,"callback":158,"permissionCallback":26,"file":141,"line":163},"\u002Fthemes\u002F(?P\u003Cslug>[a-zA-Z0-9-]+)",[157],146,{"namespace":154,"route":165,"methods":166,"callback":158,"permissionCallback":26,"file":141,"line":167},"\u002Fthemes\u002F(?P\u003Cslug>[a-zA-Z0-9-]+)\u002Fexport",[157],159,{"namespace":154,"route":169,"methods":170,"callback":158,"permissionCallback":26,"file":141,"line":171},"\u002Fcheck-slug",[157],167,[],[],{"dangerousFunctions":175,"sqlUsage":176,"outputEscaping":178,"fileOperations":132,"externalRequests":47,"nonceChecks":11,"capabilityChecks":186,"bundledLibraries":187},[],{"prepared":11,"raw":11,"locations":177},[],{"escaped":31,"rawEcho":179,"locations":180},2,[181,184],{"file":141,"line":182,"context":183},312,"raw output",{"file":141,"line":185,"context":183},824,3,[],[],{"summary":190,"deductions":191},"The \"theme-designer\" plugin v1.1.1 presents a mixed security posture. On the positive side, it demonstrates good practices by exclusively using prepared statements for SQL queries and has no recorded vulnerabilities or known CVEs.  The absence of dangerous functions and the limited number of file operations and external HTTP requests are also encouraging signs.\n\nHowever, significant concerns arise from the plugin's attack surface. All four identified REST API routes lack permission callbacks, meaning any authenticated user, regardless of their role, could potentially interact with these endpoints. This is a critical oversight as it exposes these functionalities to unauthorized access. Furthermore, the complete absence of nonce checks on its entry points, especially given the REST API routes, amplifies the risk of CSRF attacks.\n\nWhile the vulnerability history is clean, suggesting the developers have been diligent or the plugin is less of a target, the static analysis reveals an immediate and exploitable weakness. The lack of proper authorization checks on REST API routes is the most pressing issue, overshadowing the otherwise positive aspects of the codebase. The plugin should prioritize implementing robust permission checks for all its entry points to mitigate these risks.",[192,195,197,199],{"reason":193,"points":194},"REST API routes without permission callbacks",10,{"reason":196,"points":194},"Total entry points unprotected",{"reason":198,"points":194},"No nonce checks on entry points",{"reason":200,"points":31},"Output escaping not fully implemented","2026-03-17T06:20:05.709Z",{"wat":203,"direct":250},{"assetPaths":204,"generatorPatterns":226,"scriptPaths":227,"versionParams":228},[205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225],"\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Futils.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fapi.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FListManager.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FComboboxControl.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FTriStateCheckboxControl.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeList.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FSuccessMessage.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditor.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FThemeMetaData.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsGeneral.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsColor.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsTypography.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsShadow.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsDimensions.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsLayout.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsBackground.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsBorder.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsPosition.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsSpacing.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fadmin.js","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fcss\u002Fadmin.css",[],[205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224],[229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249],"\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Futils.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fapi.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FListManager.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FComboboxControl.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FTriStateCheckboxControl.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeList.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FSuccessMessage.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditor.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FThemeMetaData.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsGeneral.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsColor.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsTypography.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsShadow.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsDimensions.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsLayout.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsBackground.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsBorder.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsPosition.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fcomponents\u002FThemeEditorContent\u002FSettingsSpacing.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fjs\u002Fadmin.js?ver=","\u002Fwp-content\u002Fplugins\u002Ftheme-designer\u002Fassets\u002Fcss\u002Fadmin.css?ver=",{"cssClasses":251,"htmlComments":272,"htmlAttributes":290,"restEndpoints":302,"jsGlobals":307,"shortcodeOutput":309},[252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271],"theme-designer-editor","td-controls-wrapper","td-control-label","td-control-field","td-section-title","td-editor-sidebar","td-editor-content","td-theme-list-item","td-theme-list-item-active","td-theme-preview","td-button-group","td-button","td-input-text","td-textarea","td-select","td-checkbox","td-radio","td-color-picker","td-icon-picker","td-spinner",[273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289],"\u003C!-- Theme Designer Admin Page -->","\u003C!-- Theme Designer Editor -->","\u003C!-- Theme Designer Sidebar -->","\u003C!-- Theme Designer Content Area -->","\u003C!-- Theme Designer Control -->","\u003C!-- Theme Designer Section -->","\u003C!-- Theme Designer Button -->","\u003C!-- Theme Designer Input -->","\u003C!-- Theme Designer Select -->","\u003C!-- Theme Designer Checkbox -->","\u003C!-- Theme Designer Radio Button -->","\u003C!-- Theme Designer Color Picker -->","\u003C!-- Theme Designer Icon Picker -->","\u003C!-- Theme Designer Spinner -->","\u003C!-- Theme Designer Error Message -->","\u003C!-- Theme Designer Success Message -->","\u003C!-- Theme Designer Loading Indicator -->",[291,292,293,294,295,296,297,298,299,300,301],"data-theme-designer-control","data-theme-designer-section","data-theme-designer-button","data-theme-designer-input","data-theme-designer-select","data-theme-designer-checkbox","data-theme-designer-radio","data-theme-designer-color-picker","data-theme-designer-icon-picker","data-theme-designer-slug","data-theme-designer-theme-slug",[303,304,305,306],"\u002Fwp-json\u002Ftheme-designer\u002Fv1\u002Fthemes","\u002Fwp-json\u002Ftheme-designer\u002Fv1\u002Fthemes\u002F(?P\u003Cslug>[a-zA-Z0-9-]+)","\u002Fwp-json\u002Ftheme-designer\u002Fv1\u002Fthemes\u002F(?P\u003Cslug>[a-zA-Z0-9-]+)\u002Fexport","\u002Fwp-json\u002Ftheme-designer\u002Fv1\u002Fcheck-slug",[308],"ThemDesiData",[]]