[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fczEQdhwidjE2YeKqOHr4UiTTkR36o995wO-3V6bPyu8":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30,"vulnerabilities":31,"developer":32,"crawl_stats":29,"alternatives":38,"analysis":146,"fingerprints":600},"expandable-faq","Expandable FAQ","6.1.10","KestutisIT","https:\u002F\u002Fprofiles.wordpress.org\u002Fkestutisit\u002F","\u003Cp>\u003Cstrong>First\u003C\u002Fstrong> – differently than any other similar plugin, this plugin is based on MIT license, which is a holly-grail for premium theme authors on i.e. ThemeForest or similar marketplaces.\u003Cbr \u002F>\nDifferently to standard GPLv2 license you are not required to open-source your theme and you \u003Cstrong>CAN\u003C\u002Fstrong> include this plugin into your premium websites bundle packs.\u003Cbr \u002F>\nI do say here \u003Cstrong>bundle packs\u003C\u002Fstrong>, because you should never have an F.A.Q. to be a part of your theme, because that would be a bad idea – you need to leave your customers a flexibility for the future scale:\u003Cbr \u002F>\nWhat if your customers will decide later go with some kind of fancy \u003Cstrong>knowledge base\u003C\u002Fstrong> system like in Change.org \u003Ccode>\u002Fhelp\u002F\u003C\u002Fcode> part or Envato.com \u003Ccode>Support\u003C\u002Fcode> part – if your customer will grow that big, he won’t need to have F.A.Q. plugin anymore on their website, he will want to replace it with that fancy \u003Cstrong>knowledge base\u003C\u002Fstrong> system.\u003Cbr \u002F>\nSo my advise is to include this plugin in your bundle pack’s \u003Ccode>\u002FOptional Plugins\u002F\u003C\u002Fcode> folder, so that you can tell about in the installation instructions, but make it fully independent from your theme.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Second\u003C\u002Fstrong> – this plugin is fully \u003Cstrong>MVC + Templates\u003C\u002Fstrong> based. This means that it’s code is not related at all to it’s UI, and that allows you easily to override it’s UI templates and Assets (CSS, JS, Images) by your theme very easily (and there is detailed step-by-step instructions given how to do that).\u003Cbr \u002F>\nThis means that you making a theme to be what the theme has to be – a UI part of your website, nothing more.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Third\u003C\u002Fstrong> – it is much more secure than any other plugin’s on the market. It is based on top-end S.O.L.I.D. coding principle with input data validation with data-patterns, output escaping.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Fourth\u003C\u002Fstrong> – this plugin is scalable – it’s source code is fully object-oriented, clean & logical, based on MVC architectural pattern with templates engine, compliant with strict PSR-2 coding standard and PSR-4 autoloaders, and easy to understand how to add new features on your own.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Fifth\u003C\u002Fstrong> – this plugin works well with big databases & high-traffic websites – it is created on optimal BCNF database structure and was tested on live website with 1M customers database and 500,000 active daily views.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Sixth\u003C\u002Fstrong> – it does support official WordPress multisite as network-enabled plugin, as well as it does have support WPML string translation.\u003Cbr \u002F>\nAt this point, if you need more than one language, I’d strongly advise to go with official WordPress multisite setup, because it is free, it is official (so you will never need to worry about the future support), and, most important – WordPress multisite is much more suitable for websites that needs to scale. You don’t want to have that additional translation bottle-neck code layer to be processed via database.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Seventh\u003C\u002Fstrong> – it has nice user experience – it’s has a default design, it does allow you to have more than one F.A.Q. item open at the same time – so it don’t have that annoying \u003Ccode>accordion\u003C\u002Fcode> feature.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>But the most important\u003C\u002Fstrong> is that this plugin is and always be \u003Cstrong>ads-free\u003C\u002Fstrong>. I personally really hate these \u003Cstrong>freemium\u003C\u002Fstrong>, \u003Cstrong>ads-full\u003C\u002Fstrong> or \u003Cstrong>tracking\u003C\u002Fstrong> plugins which makes majority of the plugins on w.org plugins directory (and, actually, many of premium marketplaces). So this is the key features we always maintain:\u003Cbr \u002F>\n1. Never track your data (nor even by putting some kind of GDPR-compliance agreement checkbox, like \u003Ccode>Error Log Monitor\u003C\u002Fcode> plugin),\u003Cbr \u002F>\n2. Never make it pseudo-ads-full (even such a big plugins like \u003Ccode>WooCommerce\u003C\u002Fcode> or \u003Ccode>Contact Form 7\u003C\u002Fcode> has nearly 80% of their home screen or 20% of their main buttons about \u003Ccode>how to install \\ buy other plugins\u003C\u002Fcode>\u003Cbr \u002F>\n– this is a really ugly behavior of pushing-more and going to Facebook-like business, where you get like drug-addicted to company products).\u003C\u002Fp>\n\u003Cp>The goal of this plugin is to full-fill the needs of website-starter, that needs a great tool which can last him for many years until it will grow that big so he would grow-out current plugins and would need some kind of different plugins.\u003C\u002Fp>\n\u003Cp>And, I believe, that many other developers had the same issue when tried to create their first premium theme or set-up a website for their client. Starting with the issues with license type to the moment when F.A.Q. is \u003Ccode>hardcoded\u003C\u002Fcode> into theme code.\u003C\u002Fp>\n\u003Cp>So I wanted to help all these developers to save their time, and I’m releasing this plugin for you to simplify your work. And I’m releasing it under MIT license, which allows you to use this plugin your website bundle without any restrictions for both – free and commercial use.\u003C\u002Fp>\n\u003Cp>Plus – I’m giving a promise to you, that this plugin is and will always be 100% free, without any ads, ‘Subscribe’, ‘Follow us’, ‘Check our page’, ‘Get Pro Version’ or similar links.\u003C\u002Fp>\n\u003Cp>Finally – the code is poetry – \u003Cstrong>the better is the web, the happier is the world\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch3>Live Demo\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fnativerental.com\u002Fcars\u002Ffaq\u002F\" title=\"Expandable FAQ (Live Demo)\" rel=\"nofollow ugc\">Expandable FAQ (Live Demo)\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>GitHub Repository (for those, who want to contribute via “Pull Requests”)\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FSolidMVC\u002FExpandableFAQ\" title=\"ExpandableFAQ @GitHub\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002FSolidMVC\u002FExpandableFAQ\u003C\u002Fa>\u003C\u002Fp>\n","It’s a MIT-licensed (can be used in premium themes), high quality, native and responsive WordPress plugin to create and view expandable F.A.Q.'s",50,2666,80,4,"2019-08-12T17:06:00.000Z","5.2.24","4.6","5.6",[20,21,22,23,24],"collapse","collapsible","expand","expandable","faqs","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fexpandable-faq\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fexpandable-faq.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":33,"display_name":7,"profile_url":8,"plugin_count":14,"total_installs":34,"avg_security_score":27,"avg_patch_time_days":35,"trust_score":36,"computed_at":37},"kestutisit",6070,30,84,"2026-04-04T05:55:19.210Z",[39,63,85,107,127],{"slug":40,"name":41,"version":42,"author":43,"author_profile":44,"description":45,"short_description":46,"active_installs":47,"downloaded":48,"rating":36,"num_ratings":49,"last_updated":50,"tested_up_to":51,"requires_at_least":52,"requires_php":53,"tags":54,"homepage":58,"download_link":59,"security_score":60,"vuln_count":61,"unpatched_count":28,"last_vuln_date":62,"fetched_at":30},"read-more-without-refresh","Read More Without Refresh","4.0.0","George Gkouvousis","https:\u002F\u002Fprofiles.wordpress.org\u002Fgkouvousisg\u002F","\u003Cp>Introducing the \u003Cstrong>Read More Without Refresh WordPress plugin v4.0.0\u003C\u002Fstrong> – \u003Cstrong>your key to elevating user experience on your website\u003C\u002Fstrong>. 🚀\u003C\u002Fp>\n\u003Cp>Say goodbye to the cumbersome page reloads that disrupt seamless content exploration. With our plugin, readers can now effortlessly access more of your valuable content without any interruptions and \u003Cstrong>boost your SEO!\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🎉 Version 4.0.0 – Major Update!\u003C\u002Fstrong> This release brings a complete UI overhaul, new free features, and showcases all 30+ Pro features so you know exactly what you’re getting when you upgrade!\u003C\u002Fp>\n\u003Ch4>✨ New in v4.0.0 (Free Version):\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\n    \u003Cstrong>Smooth Scroll\u003C\u002Fstrong>: Automatically scrolls to expanded content for better user experience\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Print Optimization\u003C\u002Fstrong>: All content automatically expands when printing – perfect for readers who want to print your articles\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Modern UI\u003C\u002Fstrong>: Beautiful tabbed interface with better organization and user experience\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Feature Transparency\u003C\u002Fstrong>: See all Pro features in settings (disabled) so you know exactly what you’re getting with Pro\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Enhanced Security\u003C\u002Fstrong>: Zero inline JavaScript, comprehensive sanitization, enterprise-grade security\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Better Accessibility\u003C\u002Fstrong>: Full ARIA support, keyboard navigation, screen reader optimized\n  \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Key Features:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\n    \u003Cstrong>Instant Content Expansion\u003C\u002Fstrong>: Enjoy a smooth ‘Read More’ transition without the need for page refreshes. Keep your visitors engaged and immersed in your content effortlessly.\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Enhanced User Engagement\u003C\u002Fstrong>: Reduce bounce rates and keep visitors on your site longer by providing a frictionless reading experience. The Read More Without Refresh plugin ensures your content flows seamlessly, creating a positive impression on your audience.\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>SEO-Friendly Design\u003C\u002Fstrong>: Our plugin is crafted with SEO in mind. Maintain optimal search engine visibility while providing an enhanced reading experience for your audience. A win-win for both search engines and site visitors. All hidden content is 100% crawlable by search engines!\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Smooth Animations\u003C\u002Fstrong>: Professional fade animations make content expansion feel natural and polished.\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Keyboard Accessible\u003C\u002Fstrong>: Full keyboard navigation support (Enter\u002FSpace keys) for accessibility compliance.\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Customizable Styling\u003C\u002Fstrong>: Change button colors, borders, padding, and font weight to match your brand.\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Gutenberg Compatible\u003C\u002Fstrong>: Works seamlessly in the WordPress block editor.\n  \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>It works via a shortcode and can be placed everywhere and you can style its colors through its settings menu. Feel free to try its frontend demo \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fapps.8web.gr\u002Fdemos\u002Fwordpress-read-more-without-refresh-plugin\u002F\" rel=\"nofollow ugc\">here\u003C\u002Fa>\u003C\u002Fstrong>, to take a look at this \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FuBKMmvFgqqg\" rel=\"nofollow ugc\">YouTube videocast\u003C\u002Fa> or to verify its \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fapps.8web.gr\u002Fdemos\u002Frmwr-gutenberg.gif\" rel=\"nofollow ugc\">Gutenberg compatibility\u003C\u002Fa>\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Simple Shortcode Usage:\u003C\u002Fstrong> `[read more] Your long text [\u002Fread]`\u003C\u002Fp>\n\u003C\u002Fp>\n\u003Ch4>🚀 PRO VERSION AVAILABLE – 30+ Premium Features!\u003C\u002Fh4>\n\u003Cp>\n  \u003Cstrong>\u003Cbr \u002F>\n    \u003Ca href=\"https:\u002F\u002Fshop.8web.gr\u002Fproduct\u002Fread-more-without-refresh-pro\u002F\" rel=\"nofollow ugc\">Check out the PRO VERSION\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>  \u003C\u002Fstrong>\n\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Unlock 30+ Premium Features with the PRO Version\u003C\u002Fstrong>:  Upgrade to the Read More Without Refresh PRO version for an even more powerful toolkit to boost your website’s performance.\u003C\u002Fp>\n\u003Ch4>🎯 FEATURES OF PRO VERSION (v4.0.0):\u003C\u002Fh4>\n\u003Cp>🎨 Design & Styling:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n    \u003Cstrong>20 Button Templates\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Choose from 20 pre-designed professional button styles. One-click application, no CSS knowledge needed. Styles include Modern Blue, Classic Underline, Rounded Gradient, Minimalist, Bold Button, Soft Shadow, Outline Style, Glassmorphism, Neon Glow, and more!\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>9 Animation Types\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Fade, slide, flip, zoom, bounce, rotate, scale, elastic animations with customizable duration (0-2000ms). Make your content expansion stand out!\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Font Awesome Icons\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Full Font Awesome 6.4.0 library access – 6,000+ icons available. Add icons to your buttons for better visual appeal.\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Google Fonts Integration\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>10+ pre-configured Google Fonts (Roboto, Open Sans, Lato, Montserrat, Poppins, Raleway, Oswald, and more). Automatic loading and integration.\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Advanced Styling\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Gradients, advanced typography controls (font size, line height, letter spacing, text transform), border radius, and more styling options.\n  \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>🎯 Content Features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n    \u003Cstrong>Accordion\u002FFAQ Mode\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Perfect for FAQs and product details. Auto-collapsing accordion groups with Schema.org markup for SEO. Use `[read mode=”accordion” accordion_id=”faq1″]` for organized content sections.\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Conditional Display Rules\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Time-based, scroll-triggered, device-filter, and role-based content display. Perfect for personalization. Show content after X seconds, on scroll, or for specific user roles.\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Lazy Loading\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Load content via AJAX only when expanded. Significantly improves page load times and performance.\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Dynamic Shortcode Texts\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Customize button text per instance: `[read open=”Show” close=”Hide”]` content `[\u002Fread]`\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Custom Static IDs\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Set your own meaningful IDs for better tracking: `[read id=”product-details”]`\n  \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>📊 Analytics & Tracking:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n    \u003Cstrong>Advanced Analytics Dashboard\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Full analytics submenu with click tracking, engagement rates, top clicked instances, and CSV export. Know exactly what content engages your users!\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Google Analytics Integration\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Track read more clicks with GA4 and Universal Analytics. Monitor user engagement and optimize your content strategy.\n  \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>🔧 Advanced Features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n    \u003Cstrong>Gutenberg Block Editor\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Full-featured visual block with all Pro features available in the editor. No need to remember shortcode syntax!\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Schema.org Markup\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Automatic FAQPage schema for SEO boost in search results. Better visibility in Google search!\n  \u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\n    \u003Cstrong>Smooth Scroll Configuration\u003C\u002Fstrong>\u003Cbr \u002F>\n    \u003Cbr \u002F>Customizable scroll offset (0-500px) perfect for fixed headers. Fine-tune the user experience.\n  \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>📋 Feature Comparison:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Core Features (Available in Both Versions):\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Basic Show\u002FHide\u003C\u002Fstrong> – ✅ Free | ✅ Pro\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Custom Colors & Styling\u003C\u002Fstrong> – ✅ Free | ✅ Pro\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Smooth Scroll\u003C\u002Fstrong> – ✅ Free | ✅ Pro\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Print Optimization\u003C\u002Fstrong> – ✅ Free | ✅ Pro\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Fade Animation\u003C\u002Fstrong> – ✅ Free | ✅ Pro\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Pro-Only Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>20 Button Templates\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (fully active)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>9 Animation Types\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (fade, slide, flip, zoom, bounce, rotate, scale, elastic)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Accordion\u002FFAQ Mode\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (with Schema.org markup)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Conditional Display Rules\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (time-based, scroll-triggered, device-filter, role-based)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Analytics Dashboard\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (full dashboard with CSV export)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Lazy Loading\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (AJAX content loading)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Font Awesome Icons (6,000+)\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (full Font Awesome 6.4.0 library)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Google Fonts Integration\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (10+ pre-configured fonts)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Advanced Typography\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (font size, line height, letter spacing, text transform)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Gradient Backgrounds\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (CSS gradient support)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Google Analytics Integration\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (GA4 & Universal Analytics)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Gutenberg Block Editor\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (full-featured visual block)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Schema.org Markup\u003C\u002Fstrong> – 👁️ Free (visible but disabled) | ✅ Pro (automatic FAQPage schema)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Custom Static IDs\u003C\u002Fstrong> – ❌ Free | ✅ Pro\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Per-Instance Text Override\u003C\u002Fstrong> – ❌ Free | ✅ Pro\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>👁️ = Visible in settings but disabled (Pro feature indicator) – See what you’re getting with Pro!\u003C\u002Fem>\u003C\u002Fp>\n\u003C\u002Fp>\n\u003Ch4>Why Upgrade to PRO?\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Professional Appearance\u003C\u002Fstrong>: 20 pre-designed button templates make your site look polished instantly\u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\u003Cstrong>Better Analytics\u003C\u002Fstrong>: Know what content engages users with comprehensive analytics dashboard and Google Analytics integration\u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\u003Cstrong>Advanced Features\u003C\u002Fstrong>: Accordion mode, conditional display, lazy loading, and more for maximum flexibility\u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\u003Cstrong>Performance\u003C\u002Fstrong>: Lazy loading reduces initial page load times significantly\u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\u003Cstrong>SEO Boost\u003C\u002Fstrong>: Schema.org markup and better content organization improve search rankings\u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\u003Cstrong>Text Customization\u003C\u002Fstrong>: Align the ‘Read More’ and ‘Read Less’ messages with your brand’s messaging strategy for a cohesive user experience\u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\u003Cstrong>Priority Support\u003C\u002Fstrong>: Enjoy priority assistance from our dedicated support team to ensure a smooth and hassle-free experience with the PRO features\u003C\u002Fli>\n\u003Cp>\u003C\u002Fp>\n\u003Cli>\u003Cstrong>Value\u003C\u002Fstrong>: 30+ premium features for one affordable price\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Enhance your WordPress site today with the Read More Without Refresh plugin, and take it to the next level with the PRO version’s advanced features. Elevate user satisfaction, improve SEO, and make your content shine!\u003C\u002Fp>\n\u003Cp>\n  \u003Cstrong>\u003Cbr \u002F>\n    \u003Ca href=\"https:\u002F\u002Fshop.8web.gr\u002Fproduct\u002Fread-more-without-refresh-pro\u002F\" rel=\"nofollow ugc\">Check out the PRO VERSION\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>  \u003C\u002Fstrong>\u003C\u002Fp>\n","Expand hidden content without page refresh. SEO-friendly, crawlable by search engines and easy to use.",20000,232524,54,"2026-01-16T09:35:00.000Z","6.9.4","3.0.1","",[20,22,55,56,57],"modal","read-more","seo","https:\u002F\u002Fen.wordpress.org\u002Fplugins\u002Fread-more-without-refresh\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fread-more-without-refresh.4.0.0.zip",100,1,"2020-03-20 00:00:00",{"slug":64,"name":65,"version":66,"author":67,"author_profile":68,"description":69,"short_description":70,"active_installs":71,"downloaded":72,"rating":73,"num_ratings":74,"last_updated":75,"tested_up_to":6,"requires_at_least":76,"requires_php":53,"tags":77,"homepage":81,"download_link":82,"security_score":36,"vuln_count":83,"unpatched_count":28,"last_vuln_date":84,"fetched_at":30},"show-hidecollapse-expand","Show-Hide \u002F Collapse-Expand","1.3.0","buntegiraffe","https:\u002F\u002Fprofiles.wordpress.org\u002Fbuntegiraffe\u002F","\u003Cp>\u003Cstrong>Live Demo:\u003C\u002Fstrong>\u003Cbr \u002F>\nSee live demo of our plugin at \u003Ca href=\"http:\u002F\u002Fshowhide.bunte-giraffe.de\" title=\"http:\u002F\u002Fshowhide.bunte-giraffe.de\" rel=\"nofollow ugc\">showhide.bunte-giraffe.de\u003C\u002Fa>. User: demo, password: demo.\u003C\u002Fp>\n\u003Cp>Show-Hide \u002F Collapse-Expand allows you to easily manage the amount of content shown to user upon entering your website. It will free your pages from clutter and give your website a stylish minimalistic look and feel. You will find it handy for grouping content, composing FAQs, collapsing long lists and expanding them on click, providing hidden answers to questions, organizing your widgets more efficiently, and lots more. Inserting a shortcode is done via a handy tinyMCE button in your WordPress Editor. You will configure the look of your button\u002Fhyperlink on the fly and will be able to change it later using the provided shortcode parameters. Why don’t you give it a try?\u003C\u002Fp>\n\u003Cp>Please feel free to post your questions in the support threads of this plugin, we will be glad to help you with any issues.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Ch4>\u003Cstrong>Main features\u003C\u002Fstrong>\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Show\u002FHide ANY content*\u003C\u002Fli>\n\u003Cli>Collapse\u002FExpand using jQuery Effects (blind, fold, highlight, slide)\u003C\u002Fli>\n\u003Cli>Set custom animation speed\u003C\u002Fli>\n\u003Cli>Add your custom JS functions to onclick events \u003C\u002Fli>\n\u003Cli>Collapse\u002FExpand lists\u003C\u002Fli>\n\u003Cli>Easily add FAQs\u003C\u002Fli>\n\u003Cli>Add hidden answers to quizzes (answer opens on button click)\u003C\u002Fli>\n\u003Cli>Collapse widgets to declutter sidebars\u003C\u002Fli>\n\u003Cli>Save space on pages by grouping the content under expandable headings\u003C\u002Fli>\n\u003Cli>Use hyperlinks or stylish pure-css buttons\u003C\u002Fli>\n\u003Cli>Style every link\u002Fbutton individually\u003C\u002Fli>\n\u003Cli>Make button stick to the end of the expanded content\u003C\u002Fli>\n\u003Cli>Use icons for your buttons or in front of your links\u003C\u002Fli>\n\u003Cli>Nest up to 3 levels of collapsible content\u003C\u002Fli>\n\u003Cli>Easily customize the settings and insert the shortcode with a TinyMCE button\u003C\u002Fli>\n\u003Cli>Use in sidebars by inserting the shortcode with needed parameters\u003C\u002Fli>\n\u003Cli>Regular updates\u003C\u002Fli>\n\u003Cli>Great support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fblockquote>\n\u003Cul>\n\u003Cli>We tested our plugin thoroughly, but if you have issues with any type of content, please let us know in the support thread.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>We used Best CSS Button Generator \u003Ca href=\"http:\u002F\u002Fwww.bestcssbuttongenerator.com\" title=\"http:\u002F\u002Fwww.bestcssbuttongenerator.com\" rel=\"nofollow ugc\">http:\u002F\u002Fwww.bestcssbuttongenerator.com\u003C\u002Fa> for our sleek pure-css buttons.\u003C\u002Fp>\n","Save space on your pages, posts, sidebars. Hide the content before user clicks to see it. Collapse long lists, create FAQs & more.",10000,158340,92,20,"2023-03-19T20:44:00.000Z","4.2",[20,22,78,79,80],"faq","hide-content","show-content","http:\u002F\u002Fshowhide.bunte-giraffe.de","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fshow-hidecollapse-expand.1.3.0.zip",2,"2023-01-04 00:00:00",{"slug":86,"name":87,"version":88,"author":89,"author_profile":90,"description":91,"short_description":92,"active_installs":93,"downloaded":94,"rating":95,"num_ratings":96,"last_updated":97,"tested_up_to":98,"requires_at_least":99,"requires_php":53,"tags":100,"homepage":104,"download_link":105,"security_score":60,"vuln_count":61,"unpatched_count":28,"last_vuln_date":106,"fetched_at":30},"bbspoiler","BBSpoiler","2.02","Flector","https:\u002F\u002Fprofiles.wordpress.org\u002Fflector\u002F","\u003Cp>You can use this plugin to hide part of the text of a post in a nicely-formatted container that will becomes unhidden when clicked on. The plugin can be useful for creating FAQ pages, hiding large pictures, and things like that.\u003C\u002Fp>\n\u003Cp>The plugin creates its own “Spoiler” button in the visual editor, but you can also add spoilers directly using tags. For example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[spoiler title='Title']Spoiler content[\u002Fspoiler]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>or\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[spoiler title='Title' collapse_link='no']Spoiler content[\u002Fspoiler]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>If you liked my plugin, please \u003Cstrong>rate\u003C\u002Fstrong> it.\u003C\u002Fp>\n","This plugin allows you to hide text under the tags [spoiler]your text[\u002Fspoiler].",4000,49104,94,29,"2025-05-19T09:37:00.000Z","6.8.5","3.9",[101,102,20,22,103],"box","boxes","hide","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbbspoiler\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbbspoiler.zip","2023-04-18 00:00:00",{"slug":108,"name":109,"version":110,"author":111,"author_profile":112,"description":113,"short_description":114,"active_installs":115,"downloaded":116,"rating":117,"num_ratings":118,"last_updated":119,"tested_up_to":51,"requires_at_least":120,"requires_php":53,"tags":121,"homepage":125,"download_link":126,"security_score":60,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"expandable-row-for-beaver-builder","Expandable Row for Beaver Builder","1.1.4","Pratik Chaskar","https:\u002F\u002Fprofiles.wordpress.org\u002Fpratikchaskar\u002F","\u003Cp>Simple Expandable Row for Beaver Builder. This plugin toggles any row in Beaver Builder.\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Ffontawesome.com\u002F\" rel=\"nofollow ugc\">Font Awesome\u003C\u002Fa> is distributed under the terms of the MIT and GNU General Public License.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fzurb.com\u002Fplayground\u002Ffoundation-icon-fonts-3\" rel=\"nofollow ugc\">Foundation Icons\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Simple Expandable Row for Beaver Builder.",900,24181,86,3,"2026-01-19T12:26:00.000Z","4.4",[122,22,23,123,124],"beaver-builder","page-builder-plugin","row-expand","https:\u002F\u002Fpratikchaskar.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fexpandable-row-for-beaver-builder.1.1.4.zip",{"slug":128,"name":129,"version":130,"author":131,"author_profile":132,"description":133,"short_description":134,"active_installs":115,"downloaded":135,"rating":73,"num_ratings":136,"last_updated":137,"tested_up_to":138,"requires_at_least":139,"requires_php":53,"tags":140,"homepage":144,"download_link":145,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"expandcollapse-funk","Expand + Collapse Funk","2.2","Evan Herman","https:\u002F\u002Fprofiles.wordpress.org\u002Feherman24\u002F","\u003Cp>\u003Cstrong>Video Demo\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\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\u002FfiNUqZxFwNA?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>Feautres\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Beautifully simple UI\u003C\u002Fli>\n\u003Cli>Easy to access custom tinyMCE button\u003C\u002Fli>\n\u003Cli>Easily add images and YouTube video to hidden content area\u003C\u002Fli>\n\u003Cli>Input direct links to images or YouTube videos\u003C\u002Fli>\n\u003Cli>Quick placement of expand+collapse items\u003C\u002Fli>\n\u003Cli>Use on pages and posts (or copy and paste the code to use in theme templates)\u003C\u002Fli>\n\u003Cli>Use HTML markup inside the hidden content area\u003C\u002Fli>\n\u003Cli>Mobile\u002FResponsive Ready\u003C\u002Fli>\n\u003Cli>Use in sidebar (inside of a ‘Text’ widget)\u003C\u002Fli>\n\u003Cli>SEO friendly hidden content\u003C\u002Fli>\n\u003Cli>Great Support\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>If you want to include Expand+Collapse Funk you can use the following code anywhere in your Theme: (remember to swap out the Link and Hidden Content for your content)\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003Cdiv class=\"exp-col-content-holder\">\u003Ca class=\"expand-cnt-link\" href=\"#\">This Is The Link To Click\u003C\u002Fa>\n    \u003Cdiv class=\"hidden-content\">\n        \u003Cp class=\"hiddenContentp\">This is all of your hidden content. This will be invisible at first, but after clicking on the link above this will slide in.\u003C\u002Fp>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Using Expand+Collapse Funk allows for very easy placement of collapseable content and a link to reveal the content. The expand and collapse functionality is widely\u003Cbr \u002F>\nused across the web to free up space on a page or to place semi-important content into posts, pages or into the sidebar. There is no limit to the length of the collapseable content. Easily include images,\u003Cbr \u002F>\nYouTube\u002FVimeo videos or anything else you could imagine.\u003C\u002Fp>\n\u003Cp>I originally built this plugin for the marketing department at my full time job, so a simple UI and ease of use was kept in mind throughout development.\u003C\u002Fp>\n\u003Cp>Have an idea, question, concern or found a bug?\u003Ca href=\"http:\u002F\u002Fwww.evan-herman.com\u002Fcontact\" rel=\"nofollow ugc\"> Get In Contact With Me!\u003C\u002Fa>\u003C\u002Fp>\n","Easily add expand and collapse functionality to any WordPress theme. No coding skills required! Beautifully simple UI. Save space with this plugin for &hellip;",35466,16,"2014-10-14T22:33:00.000Z","3.9.40","3.5",[141,142,20,21,143],"accordion","collapsable-content","xpand","http:\u002F\u002Fevan-herman.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fexpandcollapse-funk.2.2.zip",{"attackSurface":147,"codeSignals":229,"taintFlows":561,"riskAssessment":589,"analyzedAt":599},{"hooks":148,"ajaxHandlers":225,"restRoutes":226,"shortcodes":227,"cronEvents":228,"entryPointCount":28,"unprotectedCount":28},[149,155,161,164,166,169,174,178,182,185,189,191,193,197,201,205,209,212,214,216,219,222],{"type":150,"name":151,"callback":152,"file":153,"line":154},"filter","body_class","closure","Controllers\\Front\\AssetController.php",70,{"type":156,"name":157,"callback":158,"file":159,"line":160},"action","admin_notices","displayConfWithoutRoutingIsNullNotice","Controllers\\MainController.php",72,{"type":156,"name":157,"callback":162,"file":159,"line":163},"displayPHP_VersionRequirementNotice",82,{"type":156,"name":157,"callback":165,"file":159,"line":73},"displayWPVersionRequirementNotice",{"type":156,"name":157,"callback":167,"file":159,"line":168},"displayDependenciesAreNotLoadedNotice",113,{"type":150,"name":170,"callback":171,"priority":172,"file":159,"line":173},"plugin_row_meta","modifyInfoLinks",10,133,{"type":156,"name":175,"callback":176,"file":159,"line":177},"network_admin_menu","loadNetworkAdmin",153,{"type":150,"name":179,"callback":180,"file":159,"line":181},"admin_footer_text","removeAdminFooterText",155,{"type":150,"name":175,"callback":183,"file":159,"line":184},"removeAdminFooterVersion",157,{"type":156,"name":186,"callback":187,"file":159,"line":188},"admin_menu","loadAdmin",167,{"type":150,"name":179,"callback":180,"file":159,"line":190},169,{"type":150,"name":186,"callback":183,"file":159,"line":192},171,{"type":156,"name":194,"callback":195,"priority":172,"file":159,"line":196},"wpmu_new_blog","newBlogAdded",178,{"type":156,"name":198,"callback":199,"priority":172,"file":159,"line":200},"delete_blog","newBlogDeleted",190,{"type":156,"name":202,"callback":203,"priority":28,"file":159,"line":204},"init","runOnInit",195,{"type":156,"name":206,"callback":207,"file":159,"line":208},"admin_head","enqueueMandatoryPlainJS",717,{"type":156,"name":157,"callback":210,"file":159,"line":211},"displaySessionsAreDisabledInServerNotice",728,{"type":156,"name":206,"callback":207,"file":159,"line":213},778,{"type":156,"name":157,"callback":210,"file":159,"line":215},797,{"type":156,"name":217,"callback":207,"file":159,"line":218},"wp_head",871,{"type":156,"name":157,"callback":220,"file":159,"line":221},"displayCloningIsForbiddenNotice",1043,{"type":156,"name":157,"callback":223,"file":159,"line":224},"displayUnserializingIsForbiddenNotice",1060,[],[],[],[],{"dangerousFunctions":230,"sqlUsage":231,"outputEscaping":250,"fileOperations":555,"externalRequests":28,"nonceChecks":28,"capabilityChecks":61,"bundledLibraries":556},[],{"prepared":232,"raw":233,"locations":234},41,6,[235,239,240,242,245,247],{"file":236,"line":237,"context":238},"Models\\FAQ\\FAQ.php",138,"$wpdb->query() with variable interpolation",{"file":236,"line":177,"context":238},{"file":236,"line":241,"context":238},202,{"file":243,"line":244,"context":238},"Models\\Import\\Demo.php",184,{"file":243,"line":246,"context":238},192,{"file":248,"line":11,"context":249},"Models\\Settings\\SettingsObserver.php","$wpdb->get_results() with variable interpolation",{"escaped":251,"rawEcho":252,"locations":253},597,158,[254,258,260,263,266,269,272,275,278,281,284,286,288,290,292,294,296,298,300,302,304,307,309,311,313,315,317,319,321,323,325,327,329,331,333,335,337,339,342,343,344,345,347,349,351,353,354,356,358,361,364,366,368,370,372,373,375,378,380,381,383,386,387,389,390,392,393,394,395,397,399,401,403,405,407,409,411,412,414,416,418,420,422,424,426,428,430,432,434,435,437,439,441,443,445,447,449,451,453,455,457,460,462,464,466,467,468,469,471,473,475,477,479,480,481,483,484,486,488,490,491,492,493,495,496,497,498,500,502,504,506,508,510,512,514,516,518,521,523,525,528,531,532,533,536,537,538,540,541,542,544,545,546,548,549,550,552,554],{"file":255,"line":256,"context":257},"Controllers\\Admin\\AssetController.php",65,"raw output",{"file":255,"line":259,"context":257},66,{"file":261,"line":262,"context":257},"Controllers\\Admin\\Demos\\DemosController.php",40,{"file":264,"line":265,"context":257},"Controllers\\Admin\\FAQ\\AddEditFAQ_Controller.php",87,{"file":267,"line":268,"context":257},"Controllers\\Admin\\FAQ\\FAQ_Controller.php",43,{"file":270,"line":271,"context":257},"Controllers\\Admin\\InstallController.php",257,{"file":273,"line":274,"context":257},"Controllers\\Admin\\Manual\\ManualController.php",34,{"file":276,"line":277,"context":257},"Controllers\\Admin\\Settings\\SettingsController.php",44,{"file":279,"line":280,"context":257},"Controllers\\Admin\\Status\\NetworkController.php",147,{"file":282,"line":283,"context":257},"Controllers\\Admin\\Status\\SingleController.php",255,{"file":159,"line":285,"context":257},1131,{"file":159,"line":287,"context":257},1132,{"file":159,"line":289,"context":257},1143,{"file":159,"line":291,"context":257},1193,{"file":159,"line":293,"context":257},1194,{"file":159,"line":295,"context":257},1204,{"file":159,"line":297,"context":257},1205,{"file":159,"line":299,"context":257},1255,{"file":159,"line":301,"context":257},1289,{"file":159,"line":303,"context":257},1323,{"file":305,"line":306,"context":257},"Models\\Configuration\\Configuration.php",232,{"file":305,"line":308,"context":257},233,{"file":305,"line":310,"context":257},234,{"file":305,"line":312,"context":257},235,{"file":305,"line":314,"context":257},236,{"file":305,"line":316,"context":257},237,{"file":305,"line":318,"context":257},238,{"file":305,"line":320,"context":257},239,{"file":305,"line":322,"context":257},240,{"file":305,"line":324,"context":257},241,{"file":305,"line":326,"context":257},242,{"file":305,"line":328,"context":257},243,{"file":305,"line":330,"context":257},244,{"file":305,"line":332,"context":257},245,{"file":305,"line":334,"context":257},246,{"file":305,"line":336,"context":257},247,{"file":305,"line":338,"context":257},311,{"file":340,"line":341,"context":257},"Models\\File\\StaticFile.php",83,{"file":340,"line":36,"context":257},{"file":340,"line":27,"context":257},{"file":340,"line":117,"context":257},{"file":340,"line":346,"context":257},90,{"file":340,"line":348,"context":257},181,{"file":340,"line":350,"context":257},182,{"file":340,"line":352,"context":257},188,{"file":340,"line":336,"context":257},{"file":340,"line":355,"context":257},248,{"file":340,"line":357,"context":257},254,{"file":359,"line":360,"context":257},"Models\\Formatting\\StaticFormatter.php",218,{"file":362,"line":363,"context":257},"Models\\Import\\DemosObserver.php",102,{"file":362,"line":365,"context":257},103,{"file":362,"line":367,"context":257},104,{"file":362,"line":369,"context":257},105,{"file":362,"line":371,"context":257},106,{"file":362,"line":168,"context":257},{"file":362,"line":374,"context":257},114,{"file":376,"line":377,"context":257},"Models\\Load\\AutoLoad.php",32,{"file":376,"line":379,"context":257},52,{"file":376,"line":341,"context":257},{"file":376,"line":382,"context":257},164,{"file":384,"line":385,"context":257},"Models\\Routing\\UI_Routing.php",69,{"file":384,"line":154,"context":257},{"file":384,"line":388,"context":257},71,{"file":384,"line":160,"context":257},{"file":384,"line":391,"context":257},73,{"file":384,"line":163,"context":257},{"file":384,"line":341,"context":257},{"file":384,"line":237,"context":257},{"file":384,"line":396,"context":257},139,{"file":384,"line":398,"context":257},140,{"file":384,"line":400,"context":257},141,{"file":384,"line":402,"context":257},142,{"file":384,"line":404,"context":257},151,{"file":384,"line":406,"context":257},152,{"file":408,"line":188,"context":257},"Models\\Status\\NetworkStatus.php",{"file":408,"line":410,"context":257},203,{"file":408,"line":320,"context":257},{"file":408,"line":413,"context":257},350,{"file":408,"line":415,"context":257},351,{"file":408,"line":417,"context":257},352,{"file":408,"line":419,"context":257},375,{"file":408,"line":421,"context":257},376,{"file":408,"line":423,"context":257},377,{"file":408,"line":425,"context":257},400,{"file":408,"line":427,"context":257},401,{"file":408,"line":429,"context":257},402,{"file":408,"line":431,"context":257},403,{"file":433,"line":204,"context":257},"Models\\Status\\SingleStatus.php",{"file":433,"line":308,"context":257},{"file":433,"line":436,"context":257},270,{"file":433,"line":438,"context":257},341,{"file":433,"line":440,"context":257},342,{"file":433,"line":442,"context":257},343,{"file":433,"line":444,"context":257},366,{"file":433,"line":446,"context":257},367,{"file":433,"line":448,"context":257},368,{"file":433,"line":450,"context":257},391,{"file":433,"line":452,"context":257},392,{"file":433,"line":454,"context":257},393,{"file":433,"line":456,"context":257},394,{"file":458,"line":459,"context":257},"Models\\Style\\Style.php",56,{"file":458,"line":461,"context":257},57,{"file":458,"line":463,"context":257},58,{"file":458,"line":465,"context":257},59,{"file":458,"line":27,"context":257},{"file":458,"line":117,"context":257},{"file":458,"line":265,"context":257},{"file":458,"line":470,"context":257},88,{"file":458,"line":472,"context":257},115,{"file":458,"line":474,"context":257},116,{"file":458,"line":476,"context":257},117,{"file":458,"line":478,"context":257},118,{"file":458,"line":404,"context":257},{"file":458,"line":406,"context":257},{"file":458,"line":482,"context":257},180,{"file":458,"line":348,"context":257},{"file":458,"line":485,"context":257},209,{"file":458,"line":487,"context":257},210,{"file":458,"line":489,"context":257},211,{"file":458,"line":320,"context":257},{"file":458,"line":322,"context":257},{"file":458,"line":324,"context":257},{"file":494,"line":328,"context":257},"Models\\Validation\\StaticValidator.php",{"file":494,"line":330,"context":257},{"file":494,"line":332,"context":257},{"file":494,"line":334,"context":257},{"file":494,"line":499,"context":257},1595,{"file":494,"line":501,"context":257},1596,{"file":494,"line":503,"context":257},1597,{"file":494,"line":505,"context":257},1667,{"file":494,"line":507,"context":257},1668,{"file":494,"line":509,"context":257},1669,{"file":511,"line":172,"context":257},"UI\\Templates\\Admin\\Demos\\Shared\\DemosPartial.php",{"file":513,"line":136,"context":257},"UI\\Templates\\Admin\\Demos\\Tabs.php",{"file":513,"line":515,"context":257},18,{"file":513,"line":517,"context":257},21,{"file":519,"line":520,"context":257},"UI\\Templates\\Admin\\FAQ\\ManagerTabs.php",22,{"file":519,"line":522,"context":257},24,{"file":519,"line":524,"context":257},27,{"file":526,"line":527,"context":257},"UI\\Templates\\Admin\\FAQ\\Shared\\FAQsPartial.php",19,{"file":529,"line":530,"context":257},"UI\\Templates\\Admin\\Manual\\Tabs.php",14,{"file":529,"line":136,"context":257},{"file":529,"line":527,"context":257},{"file":534,"line":535,"context":257},"UI\\Templates\\Admin\\Settings\\Shared\\GlobalSettingsPartial.php",13,{"file":534,"line":517,"context":257},{"file":534,"line":96,"context":257},{"file":539,"line":136,"context":257},"UI\\Templates\\Admin\\Settings\\Tabs.php",{"file":539,"line":515,"context":257},{"file":539,"line":517,"context":257},{"file":543,"line":530,"context":257},"UI\\Templates\\Admin\\Status\\NetworkTabs.php",{"file":543,"line":136,"context":257},{"file":543,"line":527,"context":257},{"file":547,"line":530,"context":257},"UI\\Templates\\Admin\\Status\\SingleTabs.php",{"file":547,"line":136,"context":257},{"file":547,"line":527,"context":257},{"file":551,"line":517,"context":257},"UI\\Templates\\Front\\FAQsList.php",{"file":553,"line":459,"context":257},"Views\\PageView.php",{"file":553,"line":36,"context":257},5,[557],{"name":558,"version":559,"knownCves":560},"DataTables","1.10.18",[],[562,580],{"entryPoint":563,"graph":564,"unsanitizedCount":61,"severity":579},"getValidValueInput (Models\\Validation\\StaticValidator.php:1611)",{"nodes":565,"edges":576},[566,571],{"id":567,"type":568,"label":569,"file":494,"line":570},"n0","source","$_SERVER",1638,{"id":572,"type":573,"label":574,"file":494,"line":509,"wp_function":575},"n1","sink","echo() [XSS]","echo",[577],{"from":567,"to":572,"sanitized":578},false,"medium",{"entryPoint":581,"graph":582,"unsanitizedCount":61,"severity":588},"\u003CStaticValidator> (Models\\Validation\\StaticValidator.php:0)",{"nodes":583,"edges":586},[584,585],{"id":567,"type":568,"label":569,"file":494,"line":570},{"id":572,"type":573,"label":574,"file":494,"line":509,"wp_function":575},[587],{"from":567,"to":572,"sanitized":578},"low",{"summary":590,"deductions":591},"The \"expandable-faq\" plugin version 6.1.10 presents a generally good security posture based on the provided static analysis. The plugin demonstrates strong adherence to secure coding practices by utilizing prepared statements for a high percentage of its SQL queries and properly escaping a majority of its output.  The absence of any recorded vulnerabilities (CVEs) further reinforces this positive outlook, suggesting a history of secure development and maintenance.\n\nHowever, there are areas that warrant attention. The taint analysis reveals two flows with unsanitized paths, which, while not flagged as critical or high severity in this instance, represent a potential risk. The lack of any nonce checks across the entire plugin is a significant concern, as this is a fundamental security measure in WordPress for preventing Cross-Site Request Forgery (CSRF) attacks, particularly if any future functionality introduces new entry points or modifies existing ones.\n\nWhile the plugin currently has zero entry points without authentication checks, the absence of nonce checks is a weakness that could be exploited if vulnerabilities in other areas were to arise. The bundled DataTables library version 1.10.18 is also an older version and could potentially harbor its own unpatched vulnerabilities. Overall, the plugin is in a relatively secure state due to its SQL and output sanitization practices and lack of historical vulnerabilities, but the lack of nonce checks and the outdated bundled library are notable weaknesses.",[592,594,597],{"reason":593,"points":172},"Taint flows with unsanitized paths",{"reason":595,"points":596},"Missing nonce checks",8,{"reason":598,"points":14},"Bundled outdated library: DataTables v1.10.18","2026-03-16T21:58:23.322Z",{"wat":601,"direct":621},{"assetPaths":602,"generatorPatterns":610,"scriptPaths":611,"versionParams":613},[603,604,605,606,607,608,609],"\u002Fwp-content\u002Fplugins\u002Fexpandable-faq\u002FExpandableFAQ_UI\u002Fassets\u002Fcss\u002Ffont-awesome.min.css","\u002Fwp-content\u002Fplugins\u002Fexpandable-faq\u002FExpandableFAQ_UI\u002Fassets\u002Fcss\u002FprettyPhoto.css","\u002Fwp-content\u002Fplugins\u002Fexpandable-faq\u002FExpandableFAQ_UI\u002Fassets\u002Fcss\u002Fstyle.css","\u002Fwp-content\u002Fplugins\u002Fexpandable-faq\u002FExpandableFAQ_UI\u002Fassets\u002Fjs\u002Fexpandable-faq.js","\u002Fwp-content\u002Fplugins\u002Fexpandable-faq\u002FExpandableFAQ_UI\u002Fassets\u002Fjs\u002Fjquery.prettyPhoto.js","\u002Fwp-content\u002Fplugins\u002Fexpandable-faq\u002FExpandableFAQ_UI\u002Fassets\u002Fjs\u002Fjquery.validation.js","\u002Fwp-content\u002Fplugins\u002Fexpandable-faq\u002FExpandableFAQ_UI\u002Fassets\u002Fjs\u002FprettyPhoto.init.js",[],[612],"\u002Fwp-content\u002Fplugins\u002Fexpandable-faq\u002FControllers\u002FFront\u002FAssetController.php",[614,615,616,617,618,619,620],"expandable-faq\u002Fstyle.css?ver=","expandable-faq\u002Ffont-awesome.min.css?ver=","expandable-faq\u002FprettyPhoto.css?ver=","expandable-faq\u002Fjquery.validation.js?ver=","expandable-faq\u002Fexpandable-faq.js?ver=","expandable-faq\u002Fjquery.prettyPhoto.js?ver=","expandable-faq\u002FprettyPhoto.init.js?ver=",{"cssClasses":622,"htmlComments":628,"htmlAttributes":649,"restEndpoints":655,"jsGlobals":657,"shortcodeOutput":659},[623,624,625,626,627],"expandable-faq-wrap","expandable-faq-item","expandable-faq-title","expandable-faq-content","expandable-faq-search-input",[629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648],"\u003C!-- The main plugin controller object -->","\u003C!-- The configuration object -->","\u003C!-- Configuration -->","\u003C!-- Settings -->","\u003C!-- Create an instance of plugin configuration model -->","\u003C!-- Main Controller -->","\u003C!-- Creates new or returns existing instance of plugin main controller -->","\u003C!-- NOTE: This is not passing by reference! -->","\u003C!-- Registers plugin uninstall hook -->","\u003C!-- NOTE #1: separated from dynamic objects, because uninstall hook can be called in static context only! -->","\u003C!-- This check allows us to use plugin only in the correct way -->","\u003C!-- Register static hooks -->","\u003C!-- Run the plugin -->","\u003C!-- Initializer class to load front-end -->","\u003C!-- Final class cannot be inherited anymore. We use them when creating new instances -->","\u003C!-- We use this method, because WP_LOCALIZE_SCRIPT does not do the great job, -->","\u003C!-- and even the 'l10n_print_after' param is a backward-compatible feature, that has issues of initializing first or second count -->","\u003C!-- Register scripts for further use - in file_exists we must use PATH, and in register_script we must use URL -->","\u003C!-- Add .rtl body class, then we will able to set different styles for rtl version -->","\u003C!-- Register compatibility sty -->",[650,651,652,653,654],"data-expandable-faq-id","data-expandable-faq-active","data-expandable-faq-speed","data-expandable-faq-scroll-offset","data-expandable-faq-scroll-speed",[656],"\u002Fwp-json\u002Fexpandable-faq\u002Fv1\u002Fsettings",[658],"expandable_faq_params",[660],"[expandable_faq]"]