[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fJmR4oKJrsXznJ_FIVRlVuF9_d5ykwRrB2UThvgNGQDM":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":35,"analysis":143,"fingerprints":587},"sitelets-for-multisite","Sitelets for Multisite – Local Pages & Content Management for WordPress Multisite","0.3","Ralph Massetti","https:\u002F\u002Fprofiles.wordpress.org\u002Fsaasy\u002F","\u003Cp>\u003Cstrong>Overview Sitelets for Multisite\u003C\u002Fstrong> is a powerful WordPress plugin designed specifically for \u003Cstrong>WordPress Multisite\u003C\u002Fstrong> networks. It makes it easy to create, manage, and update \u003Cstrong>localized content pages\u003C\u002Fstrong> across every site in your network — all from one central dashboard. Whether you manage \u003Cstrong>franchise websites, dealer networks, multi-location businesses, membership portals, or multi-brand publishing platforms\u003C\u002Fstrong>, Sitelets helps you deliver consistent, location-specific pages without repetitive manual work.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Why Use Sitelets for Multisite?\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Managing multiple sites in a WordPress Multisite network can be time-consuming and error-prone. Copying and pasting pages for each sub-site is not scalable, especially when updates are frequent. Sitelets solves this by allowing admins to \u003Cstrong>Create a single “master” network template\u003C\u002Fstrong> that can be instantly cloned across multiple sites.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Core Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Centralized Brand Control:\u003C\u002Fstrong> Lock down branding elements (logos, colors, fonts) at network level—ensuring uniformity across all Sitelets.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Local Content Flexibility:\u003C\u002Fstrong> Let individual Sitelet admins customize specific content while maintaining the approved brand framework.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Instant, Network‑Wide Updates:\u003C\u002Fstrong> Push content or branding changes to all Sitelets with a single click—no need to manually edit each site.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Built-In Local SEO Optimization:\u003C\u002Fstrong> Each Sitelet is SEO‑ready with location-specific metadata and structure optimized out‑of‑the‑box.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Compatibility with Top Plugins & Themes:\u003C\u002Fstrong> Fully tested to play nicely with leading WordPress tools, Elementor, and other third-party integrations.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Want More Power? Sitelets PRO (Enterprise)\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>License Overview\u003C\u002Fstrong> Suitable for:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Managing 6–10 Sitelets at $75\u002Fmonth, or scaling to 26–50+ Sitelets (e.g. $475\u002Fmonth for 26–50).\u003C\u002Fli>\n\u003Cli>Flexible, month-to-month billing with no long-term contracts.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Core Capabilities:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Unlimited pages, posts, admins, and users across your multisite network.\u003C\u002Fli>\n\u003Cli>Instant Sitelet creation and full cloning from main to sub-site to spin up new locations in seconds.\u003C\u002Fli>\n\u003Cli>Publish pages from main to Sitelets and issue instant updates network‑wide with one click.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Advanced Controls:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Full page and block-level control to decide what’s editable and what stays locked down on each Sitelet.\u003C\u002Fli>\n\u003Cli>Granular branding, styling, and content controls so central admins can lock global styles\u002Fcolors\u002Ffonts while allowing local variations in permitted areas.\u003C\u002Fli>\n\u003Cli>Manage media assets at both main and Sitelet levels with workflows for global-to-local images, documents, and other assets.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Maintenance and Support:\u003C\u002Fstrong>\u003Cbr \u002F>\n– Automatic free updates keep every subsite current without manual effort.\u003Cbr \u002F>\n– Priority VIP support via phone, email, and chat included at all tiers.\u003C\u002Fp>\n\u003Ch4>Perfect For\u003C\u002Fh4>\n\u003Cp>🏪 Franchises, MLM & Dealer Networks — consistent branding with local customization.\u003Cbr \u002F>\n🏨 Hospitality Groups — hotels, resorts, and vacation rentals with multiple locations.\u003Cbr \u002F>\n🛠 Agencies — manage client networks more efficiently.\u003Cbr \u002F>\n📰 Publishers — replicate evergreen content across multiple sub-sites.\u003C\u002Fp>\n\u003Ch4>Benefits\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Save hours\u003C\u002Fstrong> of repetitive work.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Ensure brand consistency\u003C\u002Fstrong> across all sites.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Improve local SEO\u003C\u002Fstrong> with location-specific content.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Scale faster\u003C\u002Fstrong> without extra staff or resources.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Why Multisite Admins Love It\u003C\u002Fstrong> Sitelets for Multisite is \u003Cstrong>simple, intuitive, and purpose-built\u003C\u002Fstrong> for the unique challenges of managing a WordPress Multisite network. If you’ve ever wished you could “set it and forget it” when creating or updating local pages, this plugin is for you.\u003C\u002Fp>\n\u003Ch4>Get Started\u003C\u002Fh4>\n\u003Cp>Install \u003Cstrong>Sitelets for Multisite\u003C\u002Fstrong> today and take the hassle out of managing localized content across your WordPress Multisite network. Perfect for \u003Cstrong>multi-location businesses, agencies, and publishers\u003C\u002Fstrong> who need efficiency without sacrificing flexibility.\u003C\u002Fp>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin connects to an external API to retrieve news and blog posts from \u003Ccode>sitelets.com\u003C\u002Fcode>. No identifying user information is transmitted.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>https:\u002F\u002Fwww.sitelets.com\u002Fterms-of-service\u002F\u003C\u002Fli>\n\u003Cli>https:\u002F\u002Fwww.sitelets.com\u002Fprivacy-policy\u002F\u003C\u002Fli>\n\u003C\u002Ful>\n","Easily create, customize & update local pages across all sites in your WordPress Multisite network — ideal for franchises & multi-location SEO",0,334,"2025-08-08T14:57:00.000Z","6.8.5","6.0","7.4",[18,19,20,21,22],"dealer-sites","franchise-websites","multi-network","multisite","sub-site-content","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsitelets-for-multisite.0.3.zip",100,null,"2026-03-15T15:16:48.613Z",[],{"slug":30,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":11,"avg_security_score":25,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},"saasy",1,30,94,"2026-04-04T05:52:11.139Z",[36,56,80,100,122],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":25,"downloaded":44,"rating":45,"num_ratings":46,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":23,"tags":50,"homepage":23,"download_link":54,"security_score":55,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"plugin-activation-status","Plugin Activation Status","1.0.2.1","Curtiss Grymala","https:\u002F\u002Fprofiles.wordpress.org\u002Fcgrymala\u002F","\u003Cp>Plugin Activation Status makes it easier for owners of multisite and multi-network WordPress installations to perform plugin audits on their installations. The plugin generates a list of plugins that are not currently active on any sites or networks. It generates a separate list of plugins that are active somewhere within the installation, and provides details about where and how those plugins are activated.\u003C\u002Fp>\n\u003Cp>This plugin first retrieves a full list of all of the plugins that are network-activated throughout your installation. Then, it loops through all of the sites in your installation, retrieving a list of all of the active plugins on each site. Next, it runs a diff between the full list of installed plugins and the list of all active plugins.\u003C\u002Fp>\n\u003Cp>Once it retrieves all of that information, it outputs two separate lists.\u003C\u002Fp>\n\u003Cp>The first list is the list of Inactive Plugins; all plugins that are installed, but not activated anywhere within WordPress will be listed there. The second list shows all of the Active Plugins; all plugins that are installed and activated somewhere within WordPress are shown there.\u003C\u002Fp>\n\u003Cp>Within the Active Plugins list, each plugin also has a list of all of the places the plugin is active (at the top, a list of all of the places it’s network-active; at the bottom, all of the places it’s normally-activated).\u003C\u002Fp>\n\u003Cp>When the plugin generates the lists of plugins, it stores those lists as site options in the database, so the lists can be retrieved for reference without using any additional server resources. If you would like to remove those cached lists and generate new lists, you simply have to click the Continue button on the admin page.\u003C\u002Fp>\n","Scans a multisite or multi-network installation to identify all plugins that are active or not.",26167,92,14,"2018-04-03T19:04:00.000Z","4.9.29","3.8",[51,20,21,52,53],"active","network-active","plugins","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fplugin-activation-status.1.0.2.1.zip",85,{"slug":57,"name":58,"version":59,"author":60,"author_profile":61,"description":62,"short_description":63,"active_installs":64,"downloaded":65,"rating":33,"num_ratings":66,"last_updated":67,"tested_up_to":68,"requires_at_least":69,"requires_php":16,"tags":70,"homepage":75,"download_link":76,"security_score":77,"vuln_count":78,"unpatched_count":11,"last_vuln_date":79,"fetched_at":27},"code-snippets","Code Snippets","3.9.5","Code Snippets Pro","https:\u002F\u002Fprofiles.wordpress.org\u002Fcodesnippetspro\u002F","\u003Cp>\u003Cstrong>✂ Code Snippets\u003C\u002Fstrong> provides an effortless way to enhance your WordPress site.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🚀 Upgrade to Code Snippets Pro\u003C\u002Fstrong> for complete CSS, JavaScript, Gutenberg, Elementor and cloud synchronisation integrations. \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fcodesnippets.pro\u002Fpricing\" rel=\"nofollow ugc\">Elevate your snippets experience now!\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Say goodbye to the hassle of tweaking your theme’s \u003Ccode>functions.php\u003C\u002Fcode> file and downloading endless plugins – Code Snippets simplifies the process!\u003C\u002Fp>\n\u003Cp>A snippet is like a mini-plugin for your WordPress site, providing added functionality without the clutter.\u003C\u002Fp>\n\u003Cp>Unlike other solutions that involve dumping code into your \u003Ccode>functions.php\u003C\u002Fcode> file, Code Snippets offers an intuitive graphical interface for seamless integration and real-time execution. Managing snippets is as easy as activating and deactivating plugins, only without the bloat and overhead.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🎥 Watch a quick overview by Imran Siddiq:\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\u002FuzND-wdSCMQ?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>☁️ Each copy of Code Snippets includes full integration with the community-powered \u003Ca href=\"https:\u002F\u002Fcodesnippets.cloud\u002F\" rel=\"nofollow ugc\">Code Snippets Cloud\u003C\u002Fa> platform, providing easy access to hundreds of tweaks and enhancements ready to power-up any WordPress site.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🌐 Connect with us:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fcode-snippets\" rel=\"ugc\">Support Forum\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Ffacebook.com\u002Fgroups\u002Fcodesnippetsplugin\" rel=\"nofollow ugc\">Facebook Community\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fsnipco.de\u002Fdiscord\" rel=\"nofollow ugc\">Discord Community\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcodesnippetspro\u002Fcode-snippets\" rel=\"nofollow ugc\">GitHub Repository\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>🌟 Like our plugin? Find it useful? Please consider sharing your experience by \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fview\u002Fplugin-reviews\u002Fcode-snippets\" rel=\"ugc\">leaving a review on WordPress.org\u003C\u002Fa>. Your feedback is instrumental to shaping our future growth!\u003C\u002Fp>\n\u003Cp>🌍 We’d like to thank the wonderful people who have helped contribute translations to allow Code Snippets to be used in different languages. \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcodesnippetspro\u002Fcode-snippets\u002Fblob\u002Fcore\u002FCREDITS.md#translators\" rel=\"nofollow ugc\">You can find a full list here\u003C\u002Fa>.\u003C\u002Fp>\n","An easy, clean and simple way to enhance your site with code snippets.",1000000,19655832,494,"2026-02-05T11:03:00.000Z","6.9.4","5.0",[71,72,21,73,74],"code","css","php","snippets","https:\u002F\u002Fcodesnippets.pro","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcode-snippets.3.9.5.zip",89,7,"2026-02-05 19:33:02",{"slug":81,"name":82,"version":83,"author":84,"author_profile":85,"description":86,"short_description":87,"active_installs":88,"downloaded":89,"rating":90,"num_ratings":91,"last_updated":92,"tested_up_to":68,"requires_at_least":93,"requires_php":16,"tags":94,"homepage":98,"download_link":99,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"user-switching","User Switching","1.11.2","John Blackbourn","https:\u002F\u002Fprofiles.wordpress.org\u002Fjohnbillion\u002F","\u003Cp>This plugin allows you to quickly swap between user accounts in WordPress at the click of a button. You’ll be instantly logged out and logged in as your desired user. This is handy for helping customers on WooCommerce sites, membership sites, testing environments, or for any site where administrators need to switch between multiple accounts.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Switch user: Instantly switch to any user account from the \u003Cem>Users\u003C\u002Fem> screen.\u003C\u002Fli>\n\u003Cli>Switch back: Instantly switch back to your originating account.\u003C\u002Fli>\n\u003Cli>Switch off: Log out of your account but retain the ability to instantly switch back in again.\u003C\u002Fli>\n\u003Cli>Compatible with Multisite, WooCommerce, BuddyPress, and bbPress.\u003C\u002Fli>\n\u003Cli>Compatible with most membership and user management plugins.\u003C\u002Fli>\n\u003Cli>Compatible with most two-factor authentication solutions (see the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fuser-switching\u002Ffaq\u002F\" rel=\"ugc\">FAQ\u003C\u002Fa> for more info).\u003C\u002Fli>\n\u003Cli>Approved for use on enterprise-grade WordPress platforms such as \u003Ca href=\"https:\u002F\u002Fwww.altis-dxp.com\u002F\" rel=\"nofollow ugc\">Altis\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fwpvip.com\u002F\" rel=\"nofollow ugc\">WordPress VIP\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Note: User Switching supports versions of WordPress up to three years old, and PHP version 7.4 or higher.\u003C\u002Fp>\n\u003Ch3>Security\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Only users with the ability to edit other users can switch user accounts. By default this is only Administrators on single site installations, and Super Admins on Multisite installations.\u003C\u002Fli>\n\u003Cli>Passwords are not (and cannot be) revealed.\u003C\u002Fli>\n\u003Cli>Uses the cookie authentication system in WordPress when remembering the account(s) you’ve switched from and when switching back.\u003C\u002Fli>\n\u003Cli>Implements the nonce security system in WordPress, meaning only those who intend to switch users can switch.\u003C\u002Fli>\n\u003Cli>Full support for user session validation where appropriate.\u003C\u002Fli>\n\u003Cli>Full support for HTTPS.\u003C\u002Fli>\n\u003Cli>Backed by \u003Ca href=\"https:\u002F\u002Fpatchstack.com\u002Fdatabase\u002Fvdp\u002Fuser-switching\" rel=\"nofollow ugc\">the Patchstack Vulnerability Disclosure Program\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Visit the \u003Cem>Users\u003C\u002Fem> menu in WordPress and you’ll see a \u003Cem>Switch To\u003C\u002Fem> link in the list of action links for each user.\u003C\u002Fli>\n\u003Cli>Click this and you will immediately switch into that user account.\u003C\u002Fli>\n\u003Cli>You can switch back to your originating account via the \u003Cem>Switch back\u003C\u002Fem> link on each dashboard screen or in your profile menu in the WordPress toolbar.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>See the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fuser-switching\u002Ffaq\u002F\" rel=\"ugc\">FAQ\u003C\u002Fa> for information about the \u003Cem>Switch Off\u003C\u002Fem> feature.\u003C\u002Fp>\n\u003Ch3>Other Plugins\u003C\u002Fh3>\n\u003Cp>I maintain several other plugins for developers. Check them out:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fquery-monitor\u002F\" rel=\"ugc\">Query Monitor\u003C\u002Fa> is the developer tools panel for WordPress\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-crontrol\u002F\" rel=\"ugc\">WP Crontrol\u003C\u002Fa> lets you view and control what’s happening in the WP-Cron system\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Privacy Statement\u003C\u002Fh3>\n\u003Cp>User Switching does not send data to any third party, nor does it include any third party resources, nor will it ever do so.\u003C\u002Fp>\n\u003Cp>User Switching makes use of browser cookies in order to allow users to switch to another account. Its cookies operate using the same mechanism as the authentication cookies in WordPress core, which means their values contain the user’s \u003Ccode>user_login\u003C\u002Fcode> field in plain text which should be treated as potentially personally identifiable information (PII) for privacy and regulatory reasons (GDPR, CCPA, etc). The names of the cookies are:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>wordpress_user_sw_{COOKIEHASH}\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wordpress_user_sw_secure_{COOKIEHASH}\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>wordpress_user_sw_olduser_{COOKIEHASH}\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>See also the FAQ for some questions relating to privacy and safety when switching between users.\u003C\u002Fp>\n\u003Ch3>Accessibility Statement\u003C\u002Fh3>\n\u003Cp>User Switching aims to be fully accessible to all of its users. It implements best practices for web accessibility, outputs semantic and structured markup, adheres to the default styles and accessibility guidelines of WordPress, uses the accessibility APIs provided by WordPress and web browsers where appropriate, and is fully accessible via keyboard.\u003C\u002Fp>\n\u003Cp>User Switching should adhere to Web Content Accessibility Guidelines (WCAG) 2.0 at level AA when used with a recent version of WordPress where its admin area itself adheres to these guidelines. If you’ve experienced or identified an accessibility issue in User Switching, please open a thread in \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fuser-switching\u002F\" rel=\"ugc\">the User Switching plugin support forum\u003C\u002Fa> and I’ll address it swiftly.\u003C\u002Fp>\n","Instant switching between user accounts in WordPress and WooCommerce.",200000,5499975,98,239,"2026-02-27T00:17:00.000Z","6.1",[95,21,81,96,97],"fast-user-switching","users","woocommerce","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fuser-switching\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fuser-switching.1.11.2.zip",{"slug":101,"name":102,"version":103,"author":104,"author_profile":105,"description":106,"short_description":107,"active_installs":108,"downloaded":109,"rating":33,"num_ratings":110,"last_updated":111,"tested_up_to":68,"requires_at_least":112,"requires_php":16,"tags":113,"homepage":119,"download_link":120,"security_score":25,"vuln_count":31,"unpatched_count":11,"last_vuln_date":121,"fetched_at":27},"safe-redirect-manager","Safe Redirect Manager","2.2.2","10up","https:\u002F\u002Fprofiles.wordpress.org\u002F10up\u002F","\u003Cp>Safely manage your site’s redirects the WordPress way. There are many redirect plugins available. Most of them store redirects in the options table or in custom tables. Most of them provide tons of unnecessary options. Some of them have serious performance implications (404 error logging). Safe Redirect Manager stores redirects as Custom Post Types. This makes your data portable and your website scalable. Safe Redirect Manager is built to handle enterprise level traffic and is used on major publishing websites. The plugin comes with only what you need following the WordPress mantra, decisions not options. Actions and filters make the plugin very extensible.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002F10up\u002Fsafe-redirect-manager\" rel=\"nofollow ugc\">Fork the plugin on GitHub.\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Configuration\u003C\u002Fh3>\n\u003Cp>There are no overarching settings for this plugin. To manage redirects, navigate to the administration panel (“Tools” > “Safe Redirect Manager”).\u003C\u002Fp>\n\u003Cp>Each redirect contains a few fields that you can utilize:\u003C\u002Fp>\n\u003Ch3>“Redirect From”\u003C\u002Fh3>\n\u003Cp>This should be a path relative to the root of your WordPress installation. When someone visits your site with a path that matches this one, a redirect will occur. If your site is located at \u003Ccode>http:\u002F\u002Fexample.com\u002Fwp\u002F\u003C\u002Fcode> and you wanted to redirect \u003Ccode>http:\u002F\u002Fexample.com\u002Fwp\u002Fabout\u003C\u002Fcode> to \u003Ccode>http:\u002F\u002Fexample.com\u003C\u002Fcode>, your “Redirect From” would be \u003Ccode>\u002Fabout\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Clicking the “Enable Regex” checkbox allows you to use regular expressions in your path. There are many \u003Ca href=\"http:\u002F\u002Fwww.regular-expressions.info\" rel=\"nofollow ugc\">great tutorials\u003C\u002Fa> on regular expressions.\u003C\u002Fp>\n\u003Cp>You can also use wildcards in your “Redirect From” paths. By adding an \u003Ccode>*\u003C\u002Fcode> at the end of a URL, your redirect will match any request that starts with your “Redirect From”. Wildcards support replacements. This means if you have a wildcard in your from path that matches a string, you can have that string replace a wildcard character in your “Redirect To” path. For example, if your “Redirect From” is \u003Ccode>\u002Ftest\u002F*\u003C\u002Fcode>, your “Redirect To” is \u003Ccode>http:\u002F\u002Fgoogle.com\u002F*\u003C\u002Fcode>, and the requested path is \u003Ccode>\u002Ftest\u002Fstring\u003C\u002Fcode>, the user would be redirect to \u003Ccode>http:\u002F\u002Fgoogle.com\u002Fstring\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Ch3>“Redirect To”\u003C\u002Fh3>\n\u003Cp>This should be a path (i.e. \u003Ccode>\u002Ftest\u003C\u002Fcode>) or a URL (i.e. \u003Ccode>http:\u002F\u002Fexample.com\u002Fwp\u002Ftest\u003C\u002Fcode>). If a requested path matches “Redirect From”, they will be redirected here. “Redirect To” supports wildcard and regular expression replacements.\u003C\u002Fp>\n\u003Ch3>“HTTP Status Code”\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fwww.w3.org\u002FProtocols\u002Frfc2616\u002Frfc2616-sec10.html\" rel=\"nofollow ugc\">HTTP status codes\u003C\u002Fa> are numbers that contain information about a request (i.e. whether it was successful, unauthorized, not found, etc). You should almost always use either 302 (temporarily moved) or 301 (permanently moved).\u003C\u002Fp>\n\u003Cp>\u003Cem>Note:\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Redirects are cached using the Transients API. Cache busts occur when redirects are added, updated, and deleted so you shouldn’t be serving stale redirects.\u003C\u002Fli>\n\u003Cli>By default the plugin only allows at most 1000 redirects to prevent performance issues. There is a filter \u003Ccode>srm_max_redirects\u003C\u002Fcode> that you can utilize to up this number.\u003C\u002Fli>\n\u003Cli>“Redirect From” and requested paths are case insensitive by default.\u003C\u002Fli>\n\u003Cli>Developers can use \u003Ccode>srm_additional_status_codes\u003C\u002Fcode> filter to add status codes if needed.\u003C\u002Fli>\n\u003Cli>Rules set with 403 and 410 status codes are handled by applying the HTTP status code and render the default WordPress \u003Ccode>wp_die\u003C\u002Fcode> screen with an optional message.\u003C\u002Fli>\n\u003Cli>Rules set with a 404 status code will apply the status code and render the 404 template.\u003C\u002Fli>\n\u003Cli>Browsers heavily cache 301 (permanently moved) redirects. It’s recommended to test your permanent redirects using the 302 (temporarily moved) status code before changing them to 301 permanently moved.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Developer Documentation\u003C\u002Fh3>\n\u003Cp>Safe Redirect Manager includes a number of actions and filters developers can make use of. These are documented on the \u003Ca href=\"http:\u002F\u002F10up.github.io\u002Fsafe-redirect-manager\u002F\" rel=\"nofollow ugc\">Safe Redirect Manager developer documentation\u003C\u002Fa> micro-site.\u003C\u002Fp>\n","Safely manage your website's HTTP redirects.",40000,1922446,78,"2026-01-04T21:19:00.000Z","6.5",[114,115,116,117,118],"http-redirects","multisite-redirects","redirect-manager","safe-http-redirection","url-redirection","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsafe-redirect-manager","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsafe-redirect-manager.2.2.2.zip","2022-06-19 00:00:00",{"slug":123,"name":124,"version":125,"author":126,"author_profile":127,"description":128,"short_description":129,"active_installs":130,"downloaded":131,"rating":132,"num_ratings":133,"last_updated":134,"tested_up_to":135,"requires_at_least":15,"requires_php":136,"tags":137,"homepage":141,"download_link":142,"security_score":45,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"flush-opcache","WP OPcache","4.2.3","nierdz","https:\u002F\u002Fprofiles.wordpress.org\u002Fmnttech\u002F","\u003Cp>\u003Cstrong>Flush OPcache\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>creates a button in admin bar to flush OPcache\u003C\u002Fli>\n\u003Cli>flush only files in WordPress absolute path\u003C\u002Fli>\n\u003Cli>individual or bulk file invalidation\u003C\u002Fli>\n\u003Cli>support both memory and file caching\u003C\u002Fli>\n\u003Cli>support multisite\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>OPcache Statistics\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>memory, hits, strings and keys statistics\u003C\u002Fli>\n\u003Cli>directives, functions and general informations\u003C\u002Fli>\n\u003Cli>list all files\u003C\u002Fli>\n\u003Cli>fully responsive\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>WP CLI ready\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>add flush-opcache command to flush cache with cli: \u003Ccode>wp flush-opcache flush\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>don’t forget to add \u003Ccode>opcache.enable_cli=1\u003C\u002Fcode> to your PHP configuration\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>There are three tabs in admin page under Tools:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>General settings: plugin settings\u003C\u002Fli>\n\u003Cli>Statistics: responsive dashboard about OPcache statistics\u003C\u002Fli>\n\u003Cli>Cached files: list of cached files with the possibility of invalidating them\u003C\u002Fli>\n\u003C\u002Ful>\n","Manage OPcache inside your WordPress admin dashboard.",10000,221525,96,20,"2025-02-27T13:10:00.000Z","6.7.5","8.1",[138,139,21,140,73],"cache","flush","opcache","http:\u002F\u002Fwordpress.org\u002Fplugins\u002Fflush-opcache\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fflush-opcache.4.2.3.zip",{"attackSurface":144,"codeSignals":411,"taintFlows":486,"riskAssessment":574,"analyzedAt":586},{"hooks":145,"ajaxHandlers":399,"restRoutes":408,"shortcodes":409,"cronEvents":410,"entryPointCount":384,"unprotectedCount":31},[146,152,155,159,161,166,170,174,178,182,186,190,193,198,202,206,209,213,217,221,225,228,232,235,238,241,245,247,251,255,259,262,264,268,271,273,276,278,280,282,285,290,294,298,302,306,309,312,316,318,322,324,328,331,336,340,343,345,349,353,357,359,363,366,370,374,378,382,386,390,393,396],{"type":147,"name":148,"callback":148,"priority":149,"file":150,"line":151},"filter","post_row_actions",12,"admin-menus.php",27,{"type":147,"name":153,"callback":148,"priority":149,"file":150,"line":154},"page_row_actions",28,{"type":156,"name":157,"callback":157,"file":150,"line":158},"action","admin_head",29,{"type":156,"name":160,"callback":160,"file":150,"line":32},"admin_enqueue_scripts",{"type":147,"name":162,"callback":163,"priority":164,"file":150,"line":165},"manage_posts_columns","add_post_custom_columns",10,31,{"type":156,"name":167,"callback":168,"priority":164,"file":150,"line":169},"manage_posts_custom_column","add_post_custom_column_data",35,{"type":147,"name":171,"callback":172,"priority":164,"file":150,"line":173},"manage_pages_columns","add_page_custom_columns",36,{"type":156,"name":175,"callback":176,"priority":164,"file":150,"line":177},"manage_pages_custom_column","add_page_custom_column_data",37,{"type":156,"name":179,"callback":180,"priority":164,"file":150,"line":181},"quick_edit_custom_box","post_custom_edit_box",38,{"type":156,"name":183,"callback":184,"file":150,"line":185},"save_post","update_custom_quickedit_box",39,{"type":156,"name":187,"callback":188,"priority":164,"file":150,"line":189},"wp_after_insert_post","main_site_save_post",40,{"type":156,"name":183,"callback":191,"priority":164,"file":150,"line":192},"sitelet_save_post",44,{"type":156,"name":194,"callback":195,"priority":196,"file":150,"line":197},"pre_get_posts","sitelet_pre_get_posts",999999,47,{"type":156,"name":199,"callback":200,"file":150,"line":201},"init","wp_init",53,{"type":156,"name":194,"callback":203,"priority":204,"file":150,"line":205},"include_custom_post_type_in_query",99999,54,{"type":156,"name":207,"callback":207,"file":150,"line":208},"admin_menu",55,{"type":156,"name":210,"callback":211,"file":150,"line":212},"wp_dashboard_setup","sitelet_dashboard_widget",56,{"type":147,"name":214,"callback":215,"file":150,"line":216},"wpseo_canonical","change_canonical_tag",59,{"type":156,"name":218,"callback":219,"file":150,"line":220},"wp_head","add_canonical_tag",61,{"type":147,"name":222,"callback":223,"file":150,"line":224},"bulk_actions-edit-post","bulk_action",65,{"type":147,"name":226,"callback":223,"file":150,"line":227},"bulk_actions-edit-page",66,{"type":156,"name":229,"callback":230,"file":150,"line":231},"admin_init","handle_publish_to_sitelets",69,{"type":156,"name":229,"callback":233,"file":150,"line":234},"handle_copy_to_sitelet_pages",70,{"type":156,"name":229,"callback":236,"file":150,"line":237},"handle_compare_to_main_site",71,{"type":156,"name":229,"callback":239,"file":150,"line":240},"register_settings",72,{"type":156,"name":242,"callback":243,"file":150,"line":244},"admin_notices","bulk_action_admin_notice",74,{"type":156,"name":246,"callback":246,"priority":164,"file":150,"line":110},"wp_initialize_site",{"type":156,"name":248,"callback":249,"file":150,"line":250},"user_register","enable_custom_post_type_for_user",79,{"type":156,"name":252,"callback":253,"priority":25,"file":254,"line":173},"admin_bar_menu","remove_edit_site_from_admin_bar","admin-sitelets.php",{"type":156,"name":160,"callback":256,"file":257,"line":258},"enqueue_scripts","bug-report.php",11,{"type":156,"name":199,"callback":260,"file":261,"line":208},"check_license","edd-licensing.php",{"type":156,"name":199,"callback":263,"file":261,"line":212},"edd_sl_sitelet_plugin_updater",{"type":156,"name":265,"callback":266,"priority":133,"file":261,"line":267},"network_admin_menu","license_menu",57,{"type":156,"name":229,"callback":269,"file":261,"line":270},"register_option",58,{"type":156,"name":229,"callback":272,"file":261,"line":216},"activate_license",{"type":156,"name":229,"callback":274,"file":261,"line":275},"deactivate_license",60,{"type":156,"name":229,"callback":277,"file":261,"line":220},"clear_license",{"type":156,"name":242,"callback":242,"file":261,"line":279},62,{"type":156,"name":160,"callback":256,"priority":164,"file":261,"line":281},63,{"type":147,"name":283,"callback":283,"priority":164,"file":284,"line":181},"register_post_type_args","elementor-sitelets.php",{"type":156,"name":286,"callback":287,"priority":288,"file":284,"line":289},"elementor\u002Finit","restrict_widgets",999,41,{"type":156,"name":291,"callback":292,"priority":164,"file":284,"line":293},"elementor\u002Felement\u002Fafter_section_start","section_controls",42,{"type":156,"name":295,"callback":296,"priority":288,"file":284,"line":297},"elementor\u002Felements\u002Felements_registered","register_elements",43,{"type":156,"name":299,"callback":300,"priority":301,"file":284,"line":192},"elementor\u002Fwidgets\u002Fregister","fully_restricted_widgets",1000,{"type":156,"name":303,"callback":304,"file":284,"line":305},"elementor\u002Fcontrols\u002Fregister","sitelet_switcher_control",45,{"type":156,"name":307,"callback":308,"file":284,"line":197},"elementor\u002Feditor\u002Fbefore_enqueue_scripts","before_enqueue_scripts",{"type":156,"name":310,"callback":256,"file":284,"line":311},"elementor\u002Fpreview\u002Fenqueue_scripts",48,{"type":156,"name":313,"callback":314,"file":284,"line":315},"elementor\u002Feditor\u002Fafter_enqueue_styles","after_enqueue_styles",49,{"type":156,"name":317,"callback":317,"priority":288,"file":284,"line":201},"wp_enqueue_scripts",{"type":156,"name":207,"callback":319,"file":320,"line":321},"add_admin_page","global_content.php",17,{"type":156,"name":160,"callback":256,"file":320,"line":323},18,{"type":147,"name":325,"callback":326,"priority":164,"file":320,"line":327},"wp_nav_menu_items","add_main_site_pages_to_menu",21,{"type":156,"name":329,"callback":329,"priority":164,"file":320,"line":330},"wp",26,{"type":147,"name":332,"callback":333,"file":334,"line":335},"pre_set_site_transient_update_plugins","check_update","includes\\EDD_SL_Plugin_Updater.php",76,{"type":147,"name":337,"callback":338,"priority":164,"file":334,"line":339},"plugins_api","plugins_api_filter",77,{"type":156,"name":341,"callback":342,"priority":164,"file":334,"line":110},"after_plugin_row","show_update_notification",{"type":156,"name":229,"callback":344,"file":334,"line":250},"show_changelog",{"type":156,"name":207,"callback":346,"file":347,"line":348},"sitelet_media_library_menu","sitelet-media-library.php",106,{"type":147,"name":350,"callback":351,"file":347,"line":352},"attachment_fields_to_edit","add_sitelet_media_checkbox",107,{"type":147,"name":354,"callback":355,"file":347,"line":356},"attachment_fields_to_save","save_custom_checkbox_attachment_field",108,{"type":156,"name":194,"callback":194,"file":347,"line":358},109,{"type":156,"name":360,"callback":361,"priority":164,"file":347,"line":362},"posts_results","the_posts",110,{"type":147,"name":364,"callback":364,"file":347,"line":365},"ajax_query_attachments_args",111,{"type":147,"name":367,"callback":368,"priority":164,"file":347,"line":369},"wp_get_attachment_image_attributes","modify_media_library_icons",113,{"type":156,"name":371,"callback":372,"priority":258,"file":347,"line":373},"delete_attachment","error_on_delete",115,{"type":156,"name":375,"callback":376,"file":347,"line":377},"elementor\u002Feditor\u002Fafter_enqueue_scripts","after_enqueue_scripts",117,{"type":147,"name":379,"callback":380,"priority":164,"file":347,"line":381},"wp_list_table_class_name","closure",176,{"type":156,"name":383,"callback":383,"priority":384,"file":347,"line":385},"media_row_actions",2,187,{"type":147,"name":387,"callback":388,"priority":258,"file":347,"line":389},"gettext","change_media_to_sitelet",189,{"type":156,"name":391,"callback":380,"file":347,"line":392},"admin_footer",191,{"type":147,"name":394,"callback":394,"priority":164,"file":347,"line":395},"map_meta_cap",205,{"type":147,"name":397,"callback":397,"priority":164,"file":347,"line":398},"user_has_cap",208,[400,405],{"action":401,"nopriv":402,"callback":401,"hasNonce":403,"hasCapCheck":402,"file":150,"line":404},"fetch_notifications",false,true,87,{"action":406,"nopriv":402,"callback":407,"hasNonce":402,"hasCapCheck":402,"file":257,"line":149},"submit_sitelet_feedback","handle_feedback_submission",[],[],[],{"dangerousFunctions":412,"sqlUsage":420,"outputEscaping":425,"fileOperations":11,"externalRequests":482,"nonceChecks":483,"capabilityChecks":484,"bundledLibraries":485},[413,417],{"fn":414,"file":284,"line":415,"context":416},"unserialize",146,"update_post_meta( $post_id, '_elementor_page_assets', unserialize($meta['_elementor_page_assets'][0]",{"fn":414,"file":284,"line":418,"context":419},150,"update_post_meta( $post_id, '_elementor_page_settings', unserialize($meta['_elementor_page_settings'",{"prepared":11,"raw":31,"locations":421},[422],{"file":150,"line":423,"context":424},1601,"$wpdb->get_results() with variable interpolation",{"escaped":369,"rawEcho":151,"locations":426},[427,429,431,433,435,437,439,441,443,445,447,449,451,453,455,457,459,461,463,465,467,469,471,473,475,477,480],{"file":150,"line":395,"context":428},"raw output",{"file":150,"line":430,"context":428},441,{"file":150,"line":432,"context":428},448,{"file":150,"line":434,"context":428},471,{"file":150,"line":436,"context":428},476,{"file":150,"line":438,"context":428},606,{"file":150,"line":440,"context":428},607,{"file":261,"line":442,"context":428},211,{"file":261,"line":444,"context":428},218,{"file":261,"line":446,"context":428},259,{"file":261,"line":448,"context":428},297,{"file":261,"line":450,"context":428},303,{"file":261,"line":452,"context":428},306,{"file":261,"line":454,"context":428},307,{"file":261,"line":456,"context":428},312,{"file":261,"line":458,"context":428},329,{"file":261,"line":460,"context":428},824,{"file":261,"line":462,"context":428},831,{"file":261,"line":464,"context":428},837,{"file":261,"line":466,"context":428},845,{"file":261,"line":468,"context":428},853,{"file":261,"line":470,"context":428},888,{"file":261,"line":472,"context":428},889,{"file":320,"line":474,"context":428},102,{"file":320,"line":476,"context":428},132,{"file":478,"line":479,"context":428},"templates\\block-theme-fallback.php",22,{"file":478,"line":481,"context":428},50,8,13,5,[],[487,504,516,529,540,556],{"entryPoint":488,"graph":489,"unsanitizedCount":31,"severity":503},"license_page (edd-licensing.php:195)",{"nodes":490,"edges":501},[491,496],{"id":492,"type":493,"label":494,"file":261,"line":495},"n0","source","$_GET['multisite_sitelets_notice_error']",219,{"id":497,"type":498,"label":499,"file":261,"line":444,"wp_function":500},"n1","sink","echo() [XSS]","echo",[502],{"from":492,"to":497,"sanitized":402},"medium",{"entryPoint":505,"graph":506,"unsanitizedCount":11,"severity":515},"\u003Cadmin-menus> (admin-menus.php:0)",{"nodes":507,"edges":513},[508,511],{"id":492,"type":493,"label":509,"file":150,"line":510},"$_GET (x3)",1276,{"id":497,"type":498,"label":499,"file":150,"line":512,"wp_function":500},1625,[514],{"from":492,"to":497,"sanitized":403},"low",{"entryPoint":517,"graph":518,"unsanitizedCount":11,"severity":515},"activate_license (edd-licensing.php:398)",{"nodes":519,"edges":527},[520,523],{"id":492,"type":493,"label":521,"file":261,"line":522},"$_POST",410,{"id":497,"type":498,"label":524,"file":261,"line":525,"wp_function":526},"update_option() [Settings Manipulation]",559,"update_option",[528],{"from":492,"to":497,"sanitized":403},{"entryPoint":530,"graph":531,"unsanitizedCount":11,"severity":515},"admin_notices (edd-licensing.php:712)",{"nodes":532,"edges":538},[533,536],{"id":492,"type":493,"label":534,"file":261,"line":535},"$_GET",718,{"id":497,"type":498,"label":499,"file":261,"line":537,"wp_function":500},721,[539],{"from":492,"to":497,"sanitized":403},{"entryPoint":541,"graph":542,"unsanitizedCount":11,"severity":515},"manage_sitelets (edd-licensing.php:756)",{"nodes":543,"edges":553},[544,546,548,551],{"id":492,"type":493,"label":521,"file":261,"line":545},767,{"id":497,"type":498,"label":524,"file":261,"line":547,"wp_function":526},768,{"id":549,"type":493,"label":494,"file":261,"line":550},"n2",832,{"id":552,"type":498,"label":499,"file":261,"line":462,"wp_function":500},"n3",[554,555],{"from":492,"to":497,"sanitized":403},{"from":549,"to":552,"sanitized":403},{"entryPoint":557,"graph":558,"unsanitizedCount":11,"severity":515},"\u003Cedd-licensing> (edd-licensing.php:0)",{"nodes":559,"edges":570},[560,562,563,565,566,568],{"id":492,"type":493,"label":561,"file":261,"line":495},"$_GET['multisite_sitelets_notice_error'] (x2)",{"id":497,"type":498,"label":499,"file":261,"line":444,"wp_function":500},{"id":549,"type":493,"label":564,"file":261,"line":522},"$_POST (x3)",{"id":552,"type":498,"label":524,"file":261,"line":525,"wp_function":526},{"id":567,"type":493,"label":534,"file":261,"line":535},"n4",{"id":569,"type":498,"label":499,"file":261,"line":537,"wp_function":500},"n5",[571,572,573],{"from":492,"to":497,"sanitized":403},{"from":549,"to":552,"sanitized":403},{"from":567,"to":569,"sanitized":403},{"summary":575,"deductions":576},"The \"sitelets-for-multisite\" plugin version 1.0.0 exhibits several concerning security practices, despite a clean vulnerability history. The most significant risk stems from an unprotected AJAX handler, which presents a direct entry point for potential attackers. While the plugin has a relatively small attack surface, this single unprotected endpoint drastically increases its vulnerability. The presence of the dangerous `unserialize` function, coupled with a raw SQL query that does not utilize prepared statements, raises further alarms. These elements, particularly when combined with potential unsanitized data passed through the AJAX handler, could lead to serious security issues like remote code execution or SQL injection if not handled with extreme caution and proper sanitization.\n\nThe plugin's vulnerability history is currently clean, with zero recorded CVEs. This is a positive indicator, suggesting that either the plugin has not been extensively targeted or that its current code has not yet been found to contain exploitable vulnerabilities. However, this lack of historical issues should not be seen as a guarantee of current security. The static analysis has clearly identified potential weaknesses that could be exploited in the future, especially given the unprotected AJAX endpoint. The significant percentage of properly escaped output (81%) is a strength, but it doesn't negate the critical risks identified.\n\nIn conclusion, while the plugin benefits from a clean vulnerability record and decent output escaping, its security posture is significantly weakened by an unprotected AJAX handler and the use of dangerous functions like `unserialize` alongside raw SQL queries. These factors combine to create a moderate to high risk profile, demanding immediate attention to secure the AJAX endpoint and sanitize all data before processing, especially before unserialization or database interaction.",[577,579,581,584],{"reason":578,"points":482},"Unprotected AJAX handler present",{"reason":580,"points":78},"Dangerous function used (unserialize)",{"reason":582,"points":583},"SQL query without prepared statements",6,{"reason":585,"points":484},"Taint flow with unsanitized paths","2026-03-17T07:06:58.694Z",{"wat":588,"direct":603},{"assetPaths":589,"generatorPatterns":595,"scriptPaths":596,"versionParams":597},[590,591,592,593,594],"\u002Fwp-content\u002Fplugins\u002Fsitelets-for-multisite\u002Fassets\u002Fcss\u002Fsitelets-style.css","\u002Fwp-content\u002Fplugins\u002Fsitelets-for-multisite\u002Fassets\u002Fjs\u002Fsitelets-script.js","\u002Fwp-content\u002Fplugins\u002Fsitelets-for-multisite\u002Fassets\u002Fcss\u002Felementor-sitelets.css","\u002Fwp-content\u002Fplugins\u002Fsitelets-for-multisite\u002Fassets\u002Fjs\u002Felementor-sitelets.js","\u002Fwp-content\u002Fplugins\u002Fsitelets-for-multisite\u002Fassets\u002Fcss\u002Fsitelets-admin-style.css",[],[591,593],[598,599,600,601,602],"sitelets-for-multisite\u002Fassets\u002Fcss\u002Fsitelets-style.css?ver=","sitelets-for-multisite\u002Fassets\u002Fjs\u002Fsitelets-script.js?ver=","sitelets-for-multisite\u002Fassets\u002Fcss\u002Felementor-sitelets.css?ver=","sitelets-for-multisite\u002Fassets\u002Fjs\u002Felementor-sitelets.js?ver=","sitelets-for-multisite\u002Fassets\u002Fcss\u002Fsitelets-admin-style.css?ver=",{"cssClasses":604,"htmlComments":610,"htmlAttributes":611,"restEndpoints":615,"jsGlobals":618,"shortcodeOutput":622},[605,606,607,608,609],"sitelets-admin-dashboard-wrap","sitelets-dashboard-content","sitelets-custom-column-permissions","sitelet-editor-wrapper","sitelet-content-control-section",[],[612,613,614],"data-sitelet-id","data-sitelet-type","data-sitelet-original-id",[616,617],"\u002Fwp-json\u002Fsitelets\u002Fv1\u002Fcontent","\u002Fwp-json\u002Fsitelets\u002Fv1\u002Fsettings",[619,620,621],"sitelets_admin_params","SiteletsAdmin","SiteletsEditor",[623,624,625],"[sitelet_content]","[sitelet_link]","[sitelet_image]"]