[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f8Ew0HayMDk4aqCJ7MnIEAPZIeWDuoIlPiDmE8MN9fHE":3,"$fHp3QPaARjiFpkrUay2CwBUjvn_hf7cS9CQsPB4XbXb8":194,"$fB1SSHMh1L_3N5Zg0CcKj0zmlIbD4DzE0zSWan42PTR4":199},{"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":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":23,"download_link":24,"security_score":25,"vuln_count":13,"unpatched_count":13,"last_vuln_date":26,"fetched_at":27,"discovery_status":28,"vulnerabilities":29,"developer":30,"crawl_stats":26,"alternatives":37,"analysis":147,"fingerprints":176},"locale-auto-switch","Locale Auto Switch","1.22","Katsushi Kawamori","https:\u002F\u002Fprofiles.wordpress.org\u002Fkatsushi-kawamori\u002F","\u003Ch4>Automatically switch the locale according to the locale of the browser.\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Can specify multiple locale of browser.\u003C\u002Fli>\n\u003Cli>Can import and export browser locale and WordPress locale configuration file with CSV.\u003C\u002Fli>\n\u003C\u002Ful>\n","Automatically switch the locale according to the locale of the browser.",30,4789,0,"2026-03-29T21:37:00.000Z","7.0","4.6","8.0",[19,20,21,22],"block","browser","languages","locale","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Flocale-auto-switch\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.22.zip",100,null,"2026-04-16T10:56:18.058Z","no_bundle",[],{"slug":31,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":33,"avg_security_score":25,"avg_patch_time_days":34,"trust_score":35,"computed_at":36},"katsushi-kawamori",54,55940,178,79,"2026-05-19T19:22:36.896Z",[38,64,88,109,126],{"slug":39,"name":40,"version":41,"author":42,"author_profile":43,"description":44,"short_description":45,"active_installs":46,"downloaded":47,"rating":48,"num_ratings":49,"last_updated":50,"tested_up_to":51,"requires_at_least":52,"requires_php":53,"tags":54,"homepage":59,"download_link":60,"security_score":61,"vuln_count":62,"unpatched_count":13,"last_vuln_date":63,"fetched_at":27},"browser-shots","Browser Screenshots","1.7.7","Kevin Leary","https:\u002F\u002Fprofiles.wordpress.org\u002Fkevinlearynet\u002F","\u003Cp>Use the \u003Ccode>[browser-shot]\u003C\u002Fcode> shortcode to automate the process of taking website screenshots. An icon is also added to the TinyMCE editor to make the shortcode creation process easy.\u003C\u002Fp>\n\u003Cp>The plugin uses the ‘mshots’ functionality, from WordPress.com, to automatically take screenshots of websites. This function is free for non-commercial use.\u003C\u002Fp>\n\u003Cp>The images are stored on the wordpress.com servers and are not saved onto your own website. The images are cached for roughly 24 hours before being generated again.\u003C\u002Fp>\n\u003Ch4>Shortcode Preview\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>\u002F\u002F basic shot 600px wide\n[browser-shot url=\"https:\u002F\u002Flink-to-website\" width=\"600\"]\n\n\u002F\u002F shot with link to other website\n[browser-shot url=\"https:\u002F\u002Flink-to-website\" width=\"700\" link=\"https:\u002F\u002Fwww.binarymoon.co.uk\u002F\"]\n\n\u002F\u002F shot with caption (uses default WordPress caption styles)\n[browser-shot url=\"https:\u002F\u002Flink-to-website\" width=\"700\"]Add Caption[\u002Fbrowser-shot]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Available Parameters\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>url (required) – the url of the link to shorten\u003C\u002Fli>\n\u003Cli>width – the width of the image\u003C\u002Fli>\n\u003Cli>height – the height of the image\u003C\u002Fli>\n\u003Cli>alt – the image alt text\u003C\u002Fli>\n\u003Cli>link – where the image links. Left blank it will point to the website where the screenshot is being taken\u003C\u002Fli>\n\u003Cli>target – browser target. Set to _blank to open in a new window\u003C\u002Fli>\n\u003Cli>class – add a class to the browsershots wrapper\u003C\u002Fli>\n\u003Cli>image_class – change the default browsershots image class from alignnone to your chosen class\u003C\u002Fli>\n\u003Cli>display_link (true or false – default true) to display a link in your screenshot\u003C\u002Fli>\n\u003Cli>post_links (true or false – default false) to link to the permalink of the post the screenshot is on\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Generating Screenshots with code\u003C\u002Fh4>\n\u003Cp>If you want to create screenshots in a theme using this plugin then you can do so using the \u003Ccode>BrowserShots::get_shot\u003C\u002Fcode> method.\u003C\u002Fp>\n\u003Cp>For example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003Cimg src=\"\u003C?php echo BrowserShots::get_shot( 'https:\u002F\u002Fprothemedesign.com', 600, 450 ); ?>\" \u002F>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Keep in mind that the plugin must be installed and activated for this to work.\u003C\u002Fp>\n\u003Cp>The get_shot method has 3 parameters.\u003C\u002Fp>\n\u003Col>\n\u003Cli>The url.\u003C\u002Fli>\n\u003Cli>The width.\u003C\u002Fli>\n\u003Cli>The height.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>The other parameters, from the shotcode, can be implemented manually when outputting the html.\u003C\u002Fp>\n\u003Ch4>Multisite Compatibility\u003C\u002Fh4>\n\u003Cp>The \u003Cem>Browser Shots\u003C\u002Fem> plugin is compatibly with WordPress Multisite, just use the \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FCreate_A_Network#WordPress_Plugins\" rel=\"nofollow ugc\">Network Activate\u003C\u002Fa> feature to enable the shortcode on every site. If you only want to enable the shortcode for a specific site, activate the plugin for that site only.\u003C\u002Fp>\n\u003Ch4>More…\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>The code can be found on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FBinaryMoon\u002Fbrowser-shots\" rel=\"nofollow ugc\">Github\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>You can reach out to me with questions or problems on \u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fbinarymoon\" rel=\"nofollow ugc\">Twitter\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Automate the process of taking website screenshots.",3000,104610,96,19,"2024-01-30T10:27:00.000Z","6.5.0","4.0","",[55,20,56,57,58],"blocks","browser-shot","generator","screenshot","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbrowser-shots\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbrowser-shots.zip",85,1,"2021-06-21 00:00:00",{"slug":65,"name":66,"version":67,"author":68,"author_profile":69,"description":70,"short_description":71,"active_installs":72,"downloaded":73,"rating":74,"num_ratings":75,"last_updated":76,"tested_up_to":77,"requires_at_least":78,"requires_php":79,"tags":80,"homepage":84,"download_link":85,"security_score":86,"vuln_count":62,"unpatched_count":62,"last_vuln_date":87,"fetched_at":27},"swiftninjapro-inspect-element-console-blocker","Developer Tools Blocker","3.2.1","SwiftNinjaPro","https:\u002F\u002Fprofiles.wordpress.org\u002Fswiftninjapro\u002F","\u003Cp>This plugin blocks non-admin users from using inspect element, while still allowing access those with manage_options permission.\u003Cbr \u002F>\nThe plugin also blocks some of the common keys(f12, ect.) and optionally can block right-clicks for non-admin users.\u003Cbr \u002F>\nAdmins are unaffected by the plugin entirely. This plugin is also able to block users who open developer tools on another site, before visiting your site.\u003C\u002Fp>\n\u003Cp>Version 3.0 update\u003C\u002Fp>\n\u003Cp>This plugin is now fast and accurate, and should work on most browsers.\u003Cbr \u002F>\nThis plugin can detect the browser console based on lag increased by opening the console. This detection is tough for a browser to prevent or get around.\u003Cbr \u002F>\nThe detection runs fast, and has some resistance to lag spikes.\u003C\u002Fp>\n\u003Cp>Lag detection does mean your site needs to have ok performance, but when testing it, I could play 10 of 10 youtube videos all at once without a false positive.\u003Cbr \u002F>\nDuring my tests, detection was still within the second I open dev tools, and successful if I go to the page with it already open.\u003Cbr \u002F>\nI tested this in chrome, firefox, and chromium.\u003Cbr \u002F>\nI also tested this on my somewhat slow website with tons of wordpress plugins installed (and the 10 videos at once test) without false positives.\u003C\u002Fp>\n","This plugin blocks non-admin users from using inspect element, while still allowing access those with manage_options permission.",500,14830,84,15,"2022-11-09T02:49:00.000Z","5.8.13","3.0.1","5.2.4",[19,20,81,82,83],"console","element","inspect","https:\u002F\u002Fwww.swiftninjapro.com\u002Fplugins\u002Fwordpress\u002F?plugin=swiftninjapro-inspect-element-console-blocker","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fswiftninjapro-inspect-element-console-blocker.zip",63,"2025-09-05 00:00:00",{"slug":89,"name":90,"version":91,"author":92,"author_profile":93,"description":94,"short_description":95,"active_installs":96,"downloaded":97,"rating":13,"num_ratings":13,"last_updated":53,"tested_up_to":98,"requires_at_least":99,"requires_php":53,"tags":100,"homepage":106,"download_link":107,"security_score":25,"vuln_count":13,"unpatched_count":13,"last_vuln_date":26,"fetched_at":108},"language-mix","Language Mix","1.0","Andriy Lesyuk","https:\u002F\u002Fprofiles.wordpress.org\u002Fs-andy\u002F","\u003Cp>There are countries, where people speak several languages. For these people there is no need to\u003Cbr \u002F>\nseparate the content of the site by such languages, especially when they come with some unique\u003Cbr \u002F>\n(i.e., not translated) content. On the other side, there can still be people, who speak only one\u003Cbr \u002F>\nlanguage.\u003C\u002Fp>\n\u003Cp>The Language Mix plugin for WordPress is an extension to the\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fpolylang\u002F\" rel=\"ugc\">Polylang\u003C\u002Fa> plugin of\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Fchouby\u002F\" rel=\"nofollow ugc\">Chouby\u003C\u002Fa>, that implements a new approach of the multilingual\u003Cbr \u002F>\ncontent handling. Its main feature is that it does not hide content in other languages, which are\u003Cbr \u002F>\nknown to the visitor! The plugin determines, which languages the user can read, using HTTP headers\u003Cbr \u002F>\nsent by the user’s browser.\u003C\u002Fp>\n\u003Cp>Additionally, the plugin comes with two widgets:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The \u003Cstrong>Languages\u003C\u002Fstrong> widget, that can be put on any WordPress page, allows to configure, content in\u003Cbr \u002F>\nwhich languages the user wants to see. The widget saves its settings into cookies.\u003C\u002Fli>\n\u003Cli>The \u003Cstrong>Translations\u003C\u002Fstrong> widget, that can be put on the single content page only (e.g., the post page),\u003Cbr \u002F>\nis an alternative to the Polylang’s \u003Cem>Language Switcher\u003C\u002Fem> widget. The difference is that this widget\u003Cbr \u002F>\nshows links only to translations of the current page (i.e., if no translations are available,\u003Cbr \u002F>\nnothing is shown).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The \u003Ca href=\"http:\u002F\u002Fprojects.andriylesyuk.com\u002Fproject\u002Fwordpress\u002Flanguage-mix\" rel=\"nofollow ugc\">plugin’s project\u003C\u002Fa> is also\u003Cbr \u002F>\nhosted on the \u003Ca href=\"http:\u002F\u002Fwww.andriylesyuk.com\" rel=\"nofollow ugc\">author’s website\u003C\u002Fa> \u003Cem>(using\u003Cbr \u002F>\n\u003Ca href=\"http:\u002F\u002Fwww.redmine.org\u002F\" rel=\"nofollow ugc\">Redmine\u003C\u002Fa> and WordPress)\u003C\u002Fem>.\u003Cbr \u002F>\n\u003Ca href=\"http:\u002F\u002Fprojects.andriylesyuk.com\u002Fproject\u002Fwordpress\u002Flanguage-mix\" rel=\"nofollow ugc\">There\u003C\u002Fa> you can read news, report\u003Cbr \u002F>\nbugs, and more.\u003C\u002Fp>\n\u003Cp>\u003Cem>For the banner I used \u003Ca href=\"http:\u002F\u002Fwww.flickr.com\u002Fphotos\u002Ffdecomite\u002F3288906696\u002F\" rel=\"nofollow ugc\">the image\u003C\u002Fa> of\u003Cbr \u002F>\n\u003Ca href=\"http:\u002F\u002Fwww.flickr.com\u002Fphotos\u002Ffdecomite\u002F\" rel=\"nofollow ugc\">Francesco De Comite\u003C\u002Fa>.\u003C\u002Fem>\u003C\u002Fp>\n\u003Ch3>Issue Tracker\u003C\u002Fh3>\n\u003Cp>Use \u003Ca href=\"http:\u002F\u002Fprojects.andriylesyuk.com\u002Fprojects\u002Flanguage-mix\u002Fissues\" rel=\"nofollow ugc\">this issue tracker\u003C\u002Fa> to report\u003Cbr \u002F>\nbugs, request features and file other issues.\u003C\u002Fp>\n\u003Ch3>Documentation\u003C\u002Fh3>\n\u003Cp>The documentation for the plugin can be found in the\u003Cbr \u002F>\n\u003Ca href=\"http:\u002F\u002Fprojects.andriylesyuk.com\u002Fprojects\u002Flanguage-mix\u002Fwiki\" rel=\"nofollow ugc\">Wiki\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Blog\u003C\u002Fh3>\n\u003Cp>The plugin’s project has a blog \u003Ca href=\"http:\u002F\u002Fblog.andriylesyuk.com\u002Fprojects\u002Flanguage-mix\u002F\" rel=\"nofollow ugc\">here\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Live Demo\u003C\u002Fh3>\n\u003Cp>I’m using this plugin at \u003Ca href=\"http:\u002F\u002Fwww.andriylesyuk.com\" rel=\"nofollow ugc\">my personal website\u003C\u002Fa>. A translated article\u003Cbr \u002F>\n\u003Cem>(English and Russian)\u003C\u002Fem> can be found \u003Ca href=\"http:\u002F\u002Fblog.andriylesyuk.com\u002Fthe-nature-of-euromaidan\u002F\" rel=\"nofollow ugc\">here\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Thanks to\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fwww.flickr.com\u002Fphotos\u002Ffdecomite\u002F\" rel=\"nofollow ugc\">Francesco De Comite\u003C\u002Fa> for\u003Cbr \u002F>\n\u003Ca href=\"http:\u002F\u002Fwww.flickr.com\u002Fphotos\u002Ffdecomite\u002F3288906696\u002F\" rel=\"nofollow ugc\">the image\u003C\u002Fa> used as the plugin’s banner.\u003C\u002Fli>\n\u003C\u002Ful>\n","This plugin modifies the behavior of the Polylang plugin making it show contents of all languages, which are believed to be known by the visitor.",10,2235,"3.7.41","3.5.1",[101,102,103,104,105],"browser-languages","cookies","multilingual","polylang","widget","http:\u002F\u002Fprojects.andriylesyuk.com\u002Fproject\u002Fwordpress\u002Flanguage-mix","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flanguage-mix.zip","2026-03-15T10:48:56.248Z",{"slug":110,"name":111,"version":112,"author":113,"author_profile":114,"description":115,"short_description":116,"active_installs":96,"downloaded":117,"rating":13,"num_ratings":13,"last_updated":53,"tested_up_to":118,"requires_at_least":119,"requires_php":15,"tags":120,"homepage":53,"download_link":125,"security_score":25,"vuln_count":13,"unpatched_count":13,"last_vuln_date":26,"fetched_at":108},"love-brave-browser","Love, Brave Browser","1.0.1","Alan Jacob Mathew","https:\u002F\u002Fprofiles.wordpress.org\u002Falanjacobmathew\u002F","\u003Cp>A simple WordPress Block plugin to shout-out your love for Brave Browser. The only functionality of this plugin is for webmasters to insert a Block in WordPress Widget that’ll create an awareness about \u003Ca href=\"https:\u002F\u002Fbrave.com\u002F\" rel=\"nofollow ugc\">Brave Browser\u003C\u002Fa> and the importance of \u003Cstrong>Privacy\u003C\u002Fstrong> and \u003Cstrong>Tracking Free Internet Experience\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch4>For Gutenberg Editor: Using Blocks\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>For all Gutenberg Block Editor users, you can simply add the functionality by simply inserting the block, anywhere in the widgets page as per your website design.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Users who doesn’t use the Gutenberg Block editor can still make use of this plugin along with the Classic Editor or Classic Widget.\u003C\u002Fp>\n\u003Ch4>For Classic Editor: Shortcode Application\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>You can use the shortcode \u003Ccode>[with_love_brave]\u003C\u002Fcode> anywhere in the widget section to insert Love Brave Browser shout-out. \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Credit Where Credit’s Due\u003C\u002Fh4>\n\u003Cp>This plugin is 95% fork of \u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Fmkaz\u002F\" rel=\"nofollow ugc\">Marcus Kazmierczak’s\u003C\u002Fa> WordPress plugin \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcopyright-block\u002F\" rel=\"ugc\">Copyright Block\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Liked the Plugin?\u003C\u002Fh4>\n\u003Cp>Or rate us on \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Flove-brave-browser\u002Freviews\u002F#new-post\" rel=\"ugc\">WordPress\u003C\u002Fa> 🙂\u003C\u002Fp>\n","Shout-out your love for Brave Browser. Supports Gutenberg Block Widget Editor as well as Classic Widget.",1971,"6.6.5","5.8",[121,19,122,123,124],"ad-free","brave-browser","privacy","security","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flove-brave-browser.1.0.1.zip",{"slug":127,"name":128,"version":112,"author":129,"author_profile":130,"description":131,"short_description":132,"active_installs":96,"downloaded":133,"rating":13,"num_ratings":13,"last_updated":134,"tested_up_to":135,"requires_at_least":136,"requires_php":53,"tags":137,"homepage":143,"download_link":144,"security_score":61,"vuln_count":62,"unpatched_count":13,"last_vuln_date":145,"fetched_at":146},"simplified-content","Simplified Content","Lucien Taylor","https:\u002F\u002Fprofiles.wordpress.org\u002Flucien-taylor\u002F","\u003Cp>Simplified Content, provides visitors with alternative ‘simplified’ content whenever they visit your website using any targeted browser.  Useful for website managers who wish to provide basic fallback for legacy browsers, e.g. simplified content for IE 8, or to block certain browsers for intranet systems.\u003C\u002Fp>\n\u003Cp>The plugin allows you to select one or more browsers from a settings page to target for alternative content.  The plugin requires a target Site Map page to use as a new root page for all website navigation.  The plugin provides the visitor with a simplified navigational system, moving from the site map to any page referenced in the site map, and a simple ‘back to site map’ link at the top of each page.\u003C\u002Fp>\n\u003Cp>WARNING: This is an aggressive plugin which provides very simple functionality for configured browsers.  Once set, any configured browsers will cease to function for administrative and normal wordpress operations.\u003Cbr \u002F>\nPlease ensure that you have other browsers available to use for administration and testing purposes.\u003C\u002Fp>\n\u003Ch4>Features:\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Choose multiple browsers from a settings page.\u003C\u002Fli>\n\u003Cli>Automatic generation of simplified content.  Requires no editing of content. Note:  javascript, and media rich content is ignored by this plugin.\u003C\u002Fli>\n\u003Cli>Choose any page to target as the sitemap page.\u003C\u002Fli>\n\u003Cli>Easy to customize ‘welcome\u002Fapology message’, header, footer and styles of basic content.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Help and documentation:\u003C\u002Fh4>\n\u003Cp>The plugin product page is available at:\u003Cbr \u002F>\n\u003Ca href=\"http:\u002F\u002Fwww.oxil.uk\u002Fwordpress\u002Fwordpress-plugins\u002Fsimplified-content\u002F\" rel=\"nofollow ugc\">http:\u002F\u002Fwww.oxil.uk\u002Fwordpress\u002Fwordpress-plugins\u002Fsimplified-content\u002F\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>The plugin help pages are available at:\u003Cbr \u002F>\n\u003Ca href=\"http:\u002F\u002Fwww.oxil.uk\u002Fhelp\u002Fplugins\u002Fsimplified-content-help\u002F\" rel=\"nofollow ugc\">http:\u002F\u002Fwww.oxil.uk\u002Fhelp\u002Fplugins\u002Fsimplified-content-help\u002F\u003C\u002Fa>\u003C\u002Fp>\n","A plugin which generates alternative 'simplified' content for a given set of browsers.  Useful legacy browser support and intranet systems.",1374,"2016-04-19T15:38:00.000Z","4.5.33","4.3.1",[138,139,140,141,142],"browser-block","content","ie-8","internet-explorer","legacy-browsers","http:\u002F\u002Fwww.oxil.uk\u002Fwordpress\u002Fwordpress-plugins\u002Fsimplified-content\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsimplified-content.1.0.1.zip","2016-02-09 00:00:00","2026-04-06T09:54:40.288Z",{"attackSurface":148,"codeSignals":154,"taintFlows":169,"riskAssessment":170,"analyzedAt":175},{"hooks":149,"ajaxHandlers":150,"restRoutes":151,"shortcodes":152,"cronEvents":153,"entryPointCount":13,"unprotectedCount":13},[],[],[],[],[],{"dangerousFunctions":155,"sqlUsage":156,"outputEscaping":166,"fileOperations":13,"externalRequests":13,"nonceChecks":13,"capabilityChecks":13,"bundledLibraries":168},[],{"prepared":13,"raw":157,"locations":158},2,[159,163],{"file":160,"line":161,"context":162},"uninstall.php",14,"$wpdb->get_results() with variable interpolation",{"file":160,"line":164,"context":165},32,"$wpdb->get_col() with variable interpolation",{"escaped":13,"rawEcho":13,"locations":167},[],[],[],{"summary":171,"deductions":172},"The locale-auto-switch plugin version 1.22 exhibits a strong security posture based on the provided static analysis and vulnerability history. The absence of any identified AJAX handlers, REST API routes, shortcodes, or cron events significantly limits the plugin's attack surface, and importantly, all identified entry points (though zero) would have been unprotected.  The code analysis reveals two SQL queries that are not using prepared statements, which is a concern as it can lead to SQL injection vulnerabilities if the input is not properly sanitized before being used in the query. However, all output is reported as properly escaped, and there are no identified dangerous functions, file operations, external HTTP requests, nonce checks, or capability checks, suggesting a well-defined and secure coding practice in these areas. The taint analysis also shows no critical or high severity unsanitized flows, further reinforcing the perception of a secure codebase.  The plugin's vulnerability history is clean, with no known CVEs, which is a significant positive indicator. This lack of historical vulnerabilities, combined with the current analysis, suggests the developers have been diligent in maintaining security.  Overall, while the absence of prepared statements for SQL queries is a point of concern, the plugin's minimal attack surface, lack of past vulnerabilities, and generally secure coding practices in other areas paint a positive security picture.",[173],{"reason":174,"points":96},"Raw SQL queries without prepared statements","2026-03-16T22:35:56.477Z",{"wat":177,"direct":186},{"assetPaths":178,"generatorPatterns":181,"scriptPaths":182,"versionParams":183},[179,180],"\u002Fwp-content\u002Fplugins\u002Flocale-auto-switch\u002Fcss\u002Fstyle.css","\u002Fwp-content\u002Fplugins\u002Flocale-auto-switch\u002Fjs\u002Flocale-auto-switch.js",[],[180],[184,185],"locale-auto-switch\u002Fcss\u002Fstyle.css?ver=","locale-auto-switch\u002Fjs\u002Flocale-auto-switch.js?ver=",{"cssClasses":187,"htmlComments":188,"htmlAttributes":189,"restEndpoints":190,"jsGlobals":191,"shortcodeOutput":193},[],[],[],[],[192],"localeAutoSwitch",[],{"error":195,"url":196,"statusCode":197,"statusMessage":198,"message":198},true,"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Flocale-auto-switch\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":200,"versions":201},23,[202,208,215,222,229,236,243,250,257,264,271,278,285,292,299,306,313,320,327,334,341,348,355],{"version":6,"download_url":24,"svn_tag_url":203,"released_at":26,"has_diff":204,"diff_files_changed":205,"diff_lines":26,"trac_diff_url":206,"vulnerabilities":207,"is_current":195},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.22\u002F",false,[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.21&new_path=%2Flocale-auto-switch%2Ftags%2F1.22",[],{"version":209,"download_url":210,"svn_tag_url":211,"released_at":26,"has_diff":204,"diff_files_changed":212,"diff_lines":26,"trac_diff_url":213,"vulnerabilities":214,"is_current":204},"1.21","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.21.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.21\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.20&new_path=%2Flocale-auto-switch%2Ftags%2F1.21",[],{"version":216,"download_url":217,"svn_tag_url":218,"released_at":26,"has_diff":204,"diff_files_changed":219,"diff_lines":26,"trac_diff_url":220,"vulnerabilities":221,"is_current":204},"1.20","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.20.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.20\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.19&new_path=%2Flocale-auto-switch%2Ftags%2F1.20",[],{"version":223,"download_url":224,"svn_tag_url":225,"released_at":26,"has_diff":204,"diff_files_changed":226,"diff_lines":26,"trac_diff_url":227,"vulnerabilities":228,"is_current":204},"1.19","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.19.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.19\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.18&new_path=%2Flocale-auto-switch%2Ftags%2F1.19",[],{"version":230,"download_url":231,"svn_tag_url":232,"released_at":26,"has_diff":204,"diff_files_changed":233,"diff_lines":26,"trac_diff_url":234,"vulnerabilities":235,"is_current":204},"1.18","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.18.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.18\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.17&new_path=%2Flocale-auto-switch%2Ftags%2F1.18",[],{"version":237,"download_url":238,"svn_tag_url":239,"released_at":26,"has_diff":204,"diff_files_changed":240,"diff_lines":26,"trac_diff_url":241,"vulnerabilities":242,"is_current":204},"1.17","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.17.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.17\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.16&new_path=%2Flocale-auto-switch%2Ftags%2F1.17",[],{"version":244,"download_url":245,"svn_tag_url":246,"released_at":26,"has_diff":204,"diff_files_changed":247,"diff_lines":26,"trac_diff_url":248,"vulnerabilities":249,"is_current":204},"1.16","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.16.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.16\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.15&new_path=%2Flocale-auto-switch%2Ftags%2F1.16",[],{"version":251,"download_url":252,"svn_tag_url":253,"released_at":26,"has_diff":204,"diff_files_changed":254,"diff_lines":26,"trac_diff_url":255,"vulnerabilities":256,"is_current":204},"1.15","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.15.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.15\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.14&new_path=%2Flocale-auto-switch%2Ftags%2F1.15",[],{"version":258,"download_url":259,"svn_tag_url":260,"released_at":26,"has_diff":204,"diff_files_changed":261,"diff_lines":26,"trac_diff_url":262,"vulnerabilities":263,"is_current":204},"1.14","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.14.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.14\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.13&new_path=%2Flocale-auto-switch%2Ftags%2F1.14",[],{"version":265,"download_url":266,"svn_tag_url":267,"released_at":26,"has_diff":204,"diff_files_changed":268,"diff_lines":26,"trac_diff_url":269,"vulnerabilities":270,"is_current":204},"1.13","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.13.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.13\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.12&new_path=%2Flocale-auto-switch%2Ftags%2F1.13",[],{"version":272,"download_url":273,"svn_tag_url":274,"released_at":26,"has_diff":204,"diff_files_changed":275,"diff_lines":26,"trac_diff_url":276,"vulnerabilities":277,"is_current":204},"1.12","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.12.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.12\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.11&new_path=%2Flocale-auto-switch%2Ftags%2F1.12",[],{"version":279,"download_url":280,"svn_tag_url":281,"released_at":26,"has_diff":204,"diff_files_changed":282,"diff_lines":26,"trac_diff_url":283,"vulnerabilities":284,"is_current":204},"1.11","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.11.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.11\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.10&new_path=%2Flocale-auto-switch%2Ftags%2F1.11",[],{"version":286,"download_url":287,"svn_tag_url":288,"released_at":26,"has_diff":204,"diff_files_changed":289,"diff_lines":26,"trac_diff_url":290,"vulnerabilities":291,"is_current":204},"1.10","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.10.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.10\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.09&new_path=%2Flocale-auto-switch%2Ftags%2F1.10",[],{"version":293,"download_url":294,"svn_tag_url":295,"released_at":26,"has_diff":204,"diff_files_changed":296,"diff_lines":26,"trac_diff_url":297,"vulnerabilities":298,"is_current":204},"1.09","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.09.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.09\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.08&new_path=%2Flocale-auto-switch%2Ftags%2F1.09",[],{"version":300,"download_url":301,"svn_tag_url":302,"released_at":26,"has_diff":204,"diff_files_changed":303,"diff_lines":26,"trac_diff_url":304,"vulnerabilities":305,"is_current":204},"1.08","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.08.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.08\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.07&new_path=%2Flocale-auto-switch%2Ftags%2F1.08",[],{"version":307,"download_url":308,"svn_tag_url":309,"released_at":26,"has_diff":204,"diff_files_changed":310,"diff_lines":26,"trac_diff_url":311,"vulnerabilities":312,"is_current":204},"1.07","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.07.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.07\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.06&new_path=%2Flocale-auto-switch%2Ftags%2F1.07",[],{"version":314,"download_url":315,"svn_tag_url":316,"released_at":26,"has_diff":204,"diff_files_changed":317,"diff_lines":26,"trac_diff_url":318,"vulnerabilities":319,"is_current":204},"1.06","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.06.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.06\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.05&new_path=%2Flocale-auto-switch%2Ftags%2F1.06",[],{"version":321,"download_url":322,"svn_tag_url":323,"released_at":26,"has_diff":204,"diff_files_changed":324,"diff_lines":26,"trac_diff_url":325,"vulnerabilities":326,"is_current":204},"1.05","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.05.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.05\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.04&new_path=%2Flocale-auto-switch%2Ftags%2F1.05",[],{"version":328,"download_url":329,"svn_tag_url":330,"released_at":26,"has_diff":204,"diff_files_changed":331,"diff_lines":26,"trac_diff_url":332,"vulnerabilities":333,"is_current":204},"1.04","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.04.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.04\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.03&new_path=%2Flocale-auto-switch%2Ftags%2F1.04",[],{"version":335,"download_url":336,"svn_tag_url":337,"released_at":26,"has_diff":204,"diff_files_changed":338,"diff_lines":26,"trac_diff_url":339,"vulnerabilities":340,"is_current":204},"1.03","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.03.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.03\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.02&new_path=%2Flocale-auto-switch%2Ftags%2F1.03",[],{"version":342,"download_url":343,"svn_tag_url":344,"released_at":26,"has_diff":204,"diff_files_changed":345,"diff_lines":26,"trac_diff_url":346,"vulnerabilities":347,"is_current":204},"1.02","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.02.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.02\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.01&new_path=%2Flocale-auto-switch%2Ftags%2F1.02",[],{"version":349,"download_url":350,"svn_tag_url":351,"released_at":26,"has_diff":204,"diff_files_changed":352,"diff_lines":26,"trac_diff_url":353,"vulnerabilities":354,"is_current":204},"1.01","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.01.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.01\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Flocale-auto-switch%2Ftags%2F1.00&new_path=%2Flocale-auto-switch%2Ftags%2F1.01",[],{"version":356,"download_url":357,"svn_tag_url":358,"released_at":26,"has_diff":204,"diff_files_changed":359,"diff_lines":26,"trac_diff_url":26,"vulnerabilities":360,"is_current":204},"1.00","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocale-auto-switch.1.00.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Flocale-auto-switch\u002Ftags\u002F1.00\u002F",[],[]]