[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fanz0SbZ43UwVe_wEJVxM5J2eZjpy3w5rwF6ZXUR7xqo":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":39,"analysis":137,"fingerprints":211},"localize","Localize WordPress","0.4","S","https:\u002F\u002Fprofiles.wordpress.org\u002Fsushkov\u002F","\u003Cp>This plugin allows you to switch your WordPress installation to use any of the\u003Cbr \u002F>\nlanguages available on \u003Ca href=\"http:\u002F\u002Ftranslate.wordpress.org\" rel=\"nofollow ugc\">GlotPress\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Some of the features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>No gettext compiler required!\u003C\u002Fli>\n\u003Cli>Does all the dirty work from editing \u003Ccode>wp-config.php\u003C\u002Fcode> to downloading the right files\u003C\u002Fli>\n\u003Cli>Can switch between versions. Available: stable and dev\u003C\u002Fli>\n\u003Cli>Uses GlotPress api!\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cdiv class=\"embed-vimeo\" style=\"text-align: center;\">\u003Ciframe loading=\"lazy\" src=\"https:\u002F\u002Fplayer.vimeo.com\u002Fvideo\u002F19433386\" width=\"750\" height=\"422\" frameborder=\"0\" webkitallowfullscreen mozallowfullscreen allowfullscreen>\u003C\u002Fiframe>\u003C\u002Fdiv>\n","Easily switch to any localization from GlotPress",200,23338,90,2,"2011-07-06T00:08:00.000Z","3.2.1","2.9","",[20,21,22,23,24],"glotpress","locale","localization","switch","translations","https:\u002F\u002Fgithub.com\u002Fstas\u002Flocalize","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocalize.0.4.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":33,"display_name":7,"profile_url":8,"plugin_count":34,"total_installs":35,"avg_security_score":27,"avg_patch_time_days":36,"trust_score":37,"computed_at":38},"sushkov",8,490,30,84,"2026-04-04T04:59:29.503Z",[40,59,78,100,119],{"slug":41,"name":42,"version":43,"author":44,"author_profile":45,"description":46,"short_description":47,"active_installs":48,"downloaded":49,"rating":28,"num_ratings":28,"last_updated":50,"tested_up_to":51,"requires_at_least":52,"requires_php":18,"tags":53,"homepage":56,"download_link":57,"security_score":58,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"glotpress-notify","GlotPress Notify","1.0.1","webaware","https:\u002F\u002Fprofiles.wordpress.org\u002Fwebaware\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fglotpress.trac.wordpress.org\u002Fwiki\u002FGlotPress\" rel=\"nofollow ugc\">GlotPress\u003C\u002Fa> is a great free tool for localising your plugins and themes. When translators add new translations to GlotPress, they don’t always tell you. If your GlotPress installation is paired with a WordPress installation, this plugin gives you an easy way to find out what’s waiting for approval:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>list the projects and languages with strings waiting for approval\u003C\u002Fli>\n\u003Cli>subscribe to email notifications for individual projects\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Admins, validators, and translators can all view strings waiting for approval and receive notification emails. End the guessing game.\u003C\u002Fp>\n\u003Ch4>Translations\u003C\u002Fh4>\n\u003Cp>Many thanks to the generous efforts of our translators:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Dutch (nl-NL) — \u003Ca href=\"https:\u002F\u002Fribwhost.nl\u002F\" rel=\"nofollow ugc\">Sander Keuzenkamp\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>French (fr-FR) — \u003Ca href=\"http:\u002F\u002Fwww.eticweb.ca\u002F\" rel=\"nofollow ugc\">Hugo Catellier\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>If you’d like to help out by translating this plugin, please \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Fglotpress-notify\" rel=\"nofollow ugc\">sign up for an account and dig in\u003C\u002Fa>. Yes, it’s GlotPress.\u003C\u002Fp>\n\u003Ch3>Contributions\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Fglotpress-notify\" rel=\"nofollow ugc\">Translate into your preferred language\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwebaware\u002Fglotpress-notify\" rel=\"nofollow ugc\">Fork me on GitHub\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","notify WordPress users when new GlotPress translations strings are awaiting review",10,4468,"2025-12-14T04:03:00.000Z","6.9.4","3.7",[20,54,55,22,24],"language","localisation","http:\u002F\u002Fshop.webaware.com.au\u002Fdownloads\u002Fglotpress-notify\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fglotpress-notify.1.0.1.zip",100,{"slug":60,"name":61,"version":62,"author":63,"author_profile":64,"description":65,"short_description":66,"active_installs":67,"downloaded":68,"rating":13,"num_ratings":69,"last_updated":70,"tested_up_to":51,"requires_at_least":71,"requires_php":72,"tags":73,"homepage":76,"download_link":77,"security_score":58,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"bogo","Bogo","3.9.1","Rock Lobster Inc.","https:\u002F\u002Fprofiles.wordpress.org\u002Frocklobsterinc\u002F","\u003Cp>Bogo is a straight-forward multilingual plugin for WordPress.\u003C\u002Fp>\n\u003Cp>The core of WordPress itself has the built-in localization capability so you can use the dashboard and theme in one language other than English. Bogo expands this capability to let you easily build a multilingual blog on a single WordPress install.\u003C\u002Fp>\n\u003Cp>Here are some technical details for those interested. Bogo plugin assigns \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Farticle\u002Fmultilingual-wordpress\u002F#different-types-of-multilingual-plugins\" rel=\"ugc\">one language per post\u003C\u002Fa>. It plays nice with WordPress – Bogo does not create any additional custom table on your database, unlike some other plugins in this category. This design makes Bogo a solid, reliable and conflict-free multilingual plugin.\u003C\u002Fp>\n\u003Ch4>Getting started with Bogo\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\n\u003Cp>Install language packs\u003C\u002Fp>\n\u003Cp>First, install language packs for languages you use on the site. You can view and install language packs in the \u003Cstrong>Language Packs\u003C\u002Fstrong> screen (\u003Cstrong>Languages > Language Packs\u003C\u002Fstrong>).\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Select your language for admin screen\u003C\u002Fp>\n\u003Cp>Bogo lets each logged-in user select a language for their admin screen UI. Select a language from the menu on the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Farticle\u002Fadministration-screens\u002F#toolbar-keeping-it-all-together\" rel=\"ugc\">\u003Cstrong>Toolbar\u003C\u002Fstrong>\u003C\u002Fa>, or from the menu in the \u003Cstrong>Profile\u003C\u002Fstrong> screen (\u003Cstrong>Users > Your Profile\u003C\u002Fstrong>) if the \u003Cstrong>Toolbar\u003C\u002Fstrong> is invisible.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Translate your posts and pages\u003C\u002Fp>\n\u003Cp>To create a translation post, go to the editor screen for the original post and find the \u003Cstrong>Language\u003C\u002Fstrong> box. Bogo does only make a copy of the post; translating the copied post is your task.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Add language switcher widgets\u003C\u002Fp>\n\u003Cp>It would be useful for site visitors if you have a language switcher on your site. Bogo provides the \u003Cstrong>Language Switcher\u003C\u002Fstrong> widget in the \u003Cstrong>Widgets\u003C\u002Fstrong> screen (\u003Cstrong>Appearance > Widgets\u003C\u002Fstrong>).\u003C\u002Fp>\n\u003Cp>You can also use the \u003Ccode>[bogo]\u003C\u002Fcode> shortcode to put a language switcher inside a post content. If you want to use this shortcode in your theme’s template files, embed the following code into the template:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php echo do_shortcode( '[bogo]' ); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Privacy notices\u003C\u002Fh4>\n\u003Cp>With the default configuration, this plugin, in itself, does not:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>track users by stealth;\u003C\u002Fli>\n\u003Cli>write any user personal data to the database;\u003C\u002Fli>\n\u003Cli>send any data to external servers;\u003C\u002Fli>\n\u003Cli>use cookies.\u003C\u002Fli>\n\u003C\u002Ful>\n","A straight-forward multilingual plugin. No more double-digit custom DB tables or hidden HTML comments that could cause you headaches later on.",10000,250900,46,"2025-11-30T08:49:00.000Z","6.7","7.4",[74,54,21,22,75],"admin","multilingual","https:\u002F\u002Fcontactform7.com\u002F2025\u002F09\u002F23\u002Fmulti-language-wordpress-without-vendor-lock-in-risks\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbogo.3.9.1.zip",{"slug":79,"name":80,"version":81,"author":82,"author_profile":83,"description":84,"short_description":85,"active_installs":86,"downloaded":87,"rating":88,"num_ratings":89,"last_updated":90,"tested_up_to":51,"requires_at_least":91,"requires_php":92,"tags":93,"homepage":98,"download_link":99,"security_score":58,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"plugin-load-filter","Plugin Load Filter","4.3.1","enomoto celtislab","https:\u002F\u002Fprofiles.wordpress.org\u002Fenomoto-celtislab\u002F","\u003Cp>Although you may have installed a lot of plugins, you may not want (or need) them activated for all of your posts and pages. With this plugin, you will be able to deactivate unnecessary plugins for each individual post and page.\u003C\u002Fp>\n\u003Cp>By filtering the activation of plugins, you can significantly speed up your website.\u003C\u002Fp>\n\u003Cp>Features\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Support Post Format type\u003C\u002Fli>\n\u003Cli>Support Custom Post type\u003C\u002Fli>\n\u003Cli>Support Jetpack Modules filtering\u003C\u002Fli>\n\u003Cli>Support WP Embed Content card (is_embed template)\u003C\u002Fli>\n\u003Cli>Support Simple Post Language Locale switcher\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>In addition to blog posts and pages, for example providing services as a Web application, you can also distinguish the plugins for blog and Web applications.\u003C\u002Fp>\n\u003Ch4>To further performance up plugin\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fyasakani-cache\u002F\" rel=\"ugc\">YASAKANI Cache\u003C\u002Fa> is a simple and easy to use super high speed page cache.\u003C\u002Fp>\n\u003Cp>For more detailed information, there is an introduction page.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fceltislab.net\u002Fen\u002Fwp-plugin-load-filter\u002F\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa>\u003C\u002Fp>\n","Dynamically activate the selected plugins for each page. Response will be faster by filtering plugins.",8000,180524,96,52,"2026-02-19T05:04:00.000Z","6.0","8.1",[94,95,96,97],"disable-plugins","dynamic-deactivate-plugins","locale-switching","performance","https:\u002F\u002Fceltislab.net\u002Fen\u002Fwp-plugin-load-filter","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fplugin-load-filter.4.3.1.zip",{"slug":101,"name":102,"version":103,"author":104,"author_profile":105,"description":106,"short_description":107,"active_installs":108,"downloaded":109,"rating":88,"num_ratings":110,"last_updated":111,"tested_up_to":51,"requires_at_least":112,"requires_php":113,"tags":114,"homepage":117,"download_link":118,"security_score":58,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"language-fallback","Language Fallback","2.1.1","Bernhard Kau","https:\u002F\u002Fprofiles.wordpress.org\u002Fkau-boy\u002F","\u003Cp>Starting with WordPress 4.3, you can use languages such as “Deutsch (Sie)” (formal German) in your WordPress installation. But if the themes or plugins you are using do not have a\u003Cbr \u002F>\ntranslation file for this language, WordPress would use the default language, usually English, instead. With the help of this plugin, you can set a fallback for your chosen language.\u003Cbr \u002F>\nEvery time a translation file is loaded, the plugin will then load the fallback if a translation for the originally chosen language was not found.\u003C\u002Fp>\n\u003Cp>A list of all my plugins can be found on the \u003Ca href=\"http:\u002F\u002Fkau-boys.com\u002Fwordpress-plugins\" title=\"WordPress Plugins\" rel=\"nofollow ugc\">WordPress Plugin page\u003C\u002Fa> on my blog \u003Ca href=\"http:\u002F\u002Fkau-boys.com\" rel=\"nofollow ugc\">kau-boys.com\u003C\u002Fa>.\u003C\u002Fp>\n","Set a language as a fallback for the chosen language (e.g. \"Deutsch\" as a fallback for \"Deutsch (Sie)\")",6000,55275,23,"2025-10-27T18:06:00.000Z","4.0","5.6",[115,54,21,22,116],"fallback","translation","https:\u002F\u002Fgithub.com\u002F2ndkauboy\u002Flanguage-fallback","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flanguage-fallback.2.1.1.zip",{"slug":120,"name":121,"version":122,"author":123,"author_profile":124,"description":125,"short_description":126,"active_installs":127,"downloaded":128,"rating":88,"num_ratings":129,"last_updated":130,"tested_up_to":51,"requires_at_least":131,"requires_php":72,"tags":132,"homepage":135,"download_link":136,"security_score":58,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"multisite-language-switcher","Multisite Language Switcher","2.10.1","Dennis Ploetner","https:\u002F\u002Fprofiles.wordpress.org\u002Frealloc\u002F","\u003Cp>A simple, powerful, and user-friendly plugin that adds multilingual support to your \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fdocumentation\u002Farticle\u002Fcreate-a-network\u002F\" rel=\"ugc\">WordPress multisite\u003C\u002Fa> installation, whether using multiple subdomains or folders. Multisite Language Switcher allows you to effortlessly manage translations for posts, pages, custom post types, categories, tags, and custom taxonomies.\u003C\u002Fp>\n\u003Cp>The plugin uses flag icons from \u003Ca href=\"http:\u002F\u002Ffamfamfam.com\" rel=\"nofollow ugc\">FamFamFam\u003C\u002Fa>. Thanks to Mark James for his great work. In addition, I would like to thank \u003Ca href=\"https:\u002F\u002Fcreativpin.com\" rel=\"nofollow ugc\">Jürgen Mayer\u003C\u002Fa> for creating the plugin’s banner.\u003C\u002Fp>\n\u003Cp>Please, don’t forget to \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fmultisite-language-switcher\u002Freviews\u002F\" rel=\"ugc\">rate this plugin\u003C\u002Fa>! 🙂\u003C\u002Fp>\n\u003Ch3>Translators\u003C\u002Fh3>\n\u003Cp>Thanks to all the translators for their great work.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>German (de_DE) – \u003Ca href=\"http:\u002F\u002Flloc.de\u002F\" rel=\"nofollow ugc\">Dennis Ploetner\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Italian (it_IT) – \u003Ca href=\"http:\u002F\u002Fwww.freely.de\u002Fit\u002F\" rel=\"nofollow ugc\">Antonella Cucinelli\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Dutch (nl_NL) – \u003Ca href=\"http:\u002F\u002Fwww.buurtaal.de\u002F\" rel=\"nofollow ugc\">Alexandra Kleijn\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Brazillian Portuguese (pt_BR) – \u003Ca href=\"http:\u002F\u002Fwww.coolweb.com.br\u002F\" rel=\"nofollow ugc\">Coolweb\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Spanish (es_ES) – \u003Ca href=\"http:\u002F\u002Fwww.ab-weblog.com\u002Fen\u002F\" rel=\"nofollow ugc\">Andreas Breitschopp\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>French (fr_FR) – \u003Ca href=\"http:\u002F\u002Fwww.ab-tools.com\u002Fen\u002F\" rel=\"nofollow ugc\">Andreas Breitschopp\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Russian (ru_RU) – \u003Ca href=\"http:\u002F\u002Fj4vk.com\u002F\" rel=\"nofollow ugc\">Andrey Vystavkin\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Ukrainian (uk) – \u003Ca href=\"http:\u002F\u002Fworm.org.ua\u002F\" rel=\"nofollow ugc\">Victor Melnichenko\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Croatian (hr_HR) – \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FBrankec69\" rel=\"nofollow ugc\">Brankec69\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Romanian (ro_RO) – \u003Ca href=\"http:\u002F\u002Fcaveatlector.eu\u002F\" rel=\"nofollow ugc\">Armand K\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Polish (pl_PL) – \u003Ca href=\"http:\u002F\u002Fwww.mojito-networks.com\u002F\" rel=\"nofollow ugc\">Kamil Frejlich\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Lithuanian (lt_LT) – Ovidijus Pukys\u003C\u002Fli>\n\u003Cli>Catalan (ca_ES) – Joan López\u003C\u002Fli>\n\u003Cli>Czech (cs_CZ) – Rastr\u003C\u002Fli>\n\u003Cli>Hungarian (hu_HU) – RobiG\u003C\u002Fli>\n\u003Cli>Georgian (ka_GE) – \u003Ca href=\"http:\u002F\u002Fwww.gwebpro.com\u002F\" rel=\"nofollow ugc\">Jas Saran\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Greek (el) – \u003Ca href=\"http:\u002F\u002Fwww.aivazidis.org\u002F\" rel=\"nofollow ugc\">Christoforos Aivazidis\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Serbian (sr_RS) – \u003Ca href=\"http:\u002F\u002Fwww.webhostinghub.com\u002F\" rel=\"nofollow ugc\">Web Hosting Hub\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Turkish (tr) – Alican Cakil\u003C\u002Fli>\n\u003Cli>Armenian (hy_AM) – Yeghishe Nersisyan\u003C\u002Fli>\n\u003Cli>Bengali (bn_BD) – Md. Nazmul Huda\u003C\u002Fli>\n\u003Cli>Japanese (ja) – \u003Ca href=\"http:\u002F\u002Fthemeboy.com\u002F\" rel=\"nofollow ugc\">ThemeBoy\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Swedish (sv_SE) – \u003Ca href=\"http:\u002F\u002Fwww.bernskioldmedia.com\u002F\" rel=\"nofollow ugc\">Erik Bernskiold\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Traditional & Simplified Chinese (zh_CN & zh_TW) – DrBenson\u003C\u002Fli>\n\u003Cli>Arabic (ar) – Mohamed Elwan\u003C\u002Fli>\n\u003Cli>Norwegian (nb_NO) – Ibrahim Qraiqe\u003C\u002Fli>\n\u003Cli>Bulgarian (bg_BG) – \u003Ca href=\"http:\u002F\u002Fwww.catblue.net\u002F\" rel=\"nofollow ugc\">Vencislav Raev\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Mexican Spanish (es_MX) – \u003Ca href=\"https:\u002F\u002Ffernandomata.mx\u002F\" rel=\"nofollow ugc\">Fernando Mata\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You can translate this plugin on \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Fmultisite-language-switcher\u002F\" rel=\"nofollow ugc\">translate.wordpress.org\u003C\u002Fa>, or if you prefer and have created your language pack, or have an update of an existing one, you can \u003Ca href=\"mailto:re@lloc.de\" rel=\"nofollow ugc\">send me\u003C\u002Fa> your Gettext PO and MO so that I can\u003Cbr \u002F>\nbundle it into the Multisite Language Switcher. You can download the latest POT file\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fmultisite-language-switcher\u002Ftrunk\u002Flanguages\u002Fdefault.pot\" rel=\"nofollow ugc\">from here\u003C\u002Fa>.\u003C\u002Fp>\n","A simple, powerful and easy-to-use plugin that will help you to manage multilingual content in a multisite WordPress installation.",4000,654774,98,"2025-12-08T10:08:00.000Z","6.1",[54,22,75,133,134],"multisite","switcher","http:\u002F\u002Fmsls.co\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmultisite-language-switcher.2.10.1.zip",{"attackSurface":138,"codeSignals":153,"taintFlows":171,"riskAssessment":199,"analyzedAt":210},{"hooks":139,"ajaxHandlers":149,"restRoutes":150,"shortcodes":151,"cronEvents":152,"entryPointCount":28,"unprotectedCount":28},[140,146],{"type":141,"name":142,"callback":143,"file":144,"line":145},"action","admin_menu","page","localize.php",39,{"type":141,"name":147,"callback":22,"file":144,"line":148},"init",40,[],[],[],[],{"dangerousFunctions":154,"sqlUsage":155,"outputEscaping":157,"fileOperations":168,"externalRequests":28,"nonceChecks":169,"capabilityChecks":28,"bundledLibraries":170},[],{"prepared":28,"raw":28,"locations":156},[],{"escaped":158,"rawEcho":159,"locations":160},7,3,[161,164,166],{"file":144,"line":162,"context":163},283,"raw output",{"file":165,"line":159,"context":163},"templates\\settings.php",{"file":165,"line":167,"context":163},31,6,1,[],[172,191],{"entryPoint":173,"graph":174,"unsanitizedCount":28,"severity":190},"page_body (localize.php:72)",{"nodes":175,"edges":187},[176,181],{"id":177,"type":178,"label":179,"file":144,"line":180},"n0","source","$_POST (x2)",81,{"id":182,"type":183,"label":184,"file":144,"line":185,"wp_function":186},"n1","sink","update_option() [Settings Manipulation]",87,"update_option",[188],{"from":177,"to":182,"sanitized":189},true,"low",{"entryPoint":192,"graph":193,"unsanitizedCount":28,"severity":190},"\u003Clocalize> (localize.php:0)",{"nodes":194,"edges":197},[195,196],{"id":177,"type":178,"label":179,"file":144,"line":180},{"id":182,"type":183,"label":184,"file":144,"line":185,"wp_function":186},[198],{"from":177,"to":182,"sanitized":189},{"summary":200,"deductions":201},"The 'localize' plugin v0.4 exhibits a generally good security posture based on the provided static analysis and vulnerability history. The absence of any AJAX handlers, REST API routes, shortcodes, or cron events means there are no apparent public entry points into the plugin's functionality, which significantly reduces its attack surface.  Furthermore, the code demonstrates positive security practices such as 100% use of prepared statements for SQL queries and a single nonce check, indicating awareness of common vulnerabilities. The lack of any known CVEs and a clean vulnerability history further reinforces this perception of safety.\n\nHowever, a few areas warrant attention. While the total output count is small, 70% proper escaping leaves 30% of outputs potentially vulnerable to cross-site scripting (XSS) if the unescaped outputs are dynamic or user-supplied. The presence of 6 file operations without explicit mention of their context or security checks is another potential concern, as insecure file handling can lead to path traversal or other file manipulation vulnerabilities.  The lack of capability checks on any entry points (although there are no apparent entry points) is a theoretical weakness, but in this specific case, it's mitigated by the zero attack surface. Overall, the plugin appears secure due to its minimal exposure, but careful review of the file operations and the unescaped outputs is recommended to ensure no latent vulnerabilities exist.",[202,205,208],{"reason":203,"points":204},"30% of outputs not properly escaped",5,{"reason":206,"points":207},"File operations present without explicit security checks",4,{"reason":209,"points":169},"No capability checks on any entry points (theoretical)","2026-03-16T20:14:12.454Z",{"wat":212,"direct":217},{"assetPaths":213,"generatorPatterns":214,"scriptPaths":215,"versionParams":216},[],[],[],[],{"cssClasses":218,"htmlComments":219,"htmlAttributes":220,"restEndpoints":221,"jsGlobals":222,"shortcodeOutput":223},[],[],[],[],[],[]]