[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fJotYTwjOGw5vpbxNrF9dUBC9opPo70V0jRkvt3CdADo":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":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":39,"analysis":143,"fingerprints":173},"disable-login-language-switcher","Disable Login Language Switcher","1.0.0","Dominik Schilling","https:\u002F\u002Fprofiles.wordpress.org\u002Focean90\u002F","\u003Cp>This plugin helps you to declutter your WordPress login screen by removing the language switcher which has been \u003Ca href=\"https:\u002F\u002Fmake.wordpress.org\u002Fcore\u002F2021\u002F12\u002F20\u002Fintroducing-new-language-switcher-on-the-login-screen-in-wp-5-9\u002F\" rel=\"nofollow ugc\">introduced in WordPress 5.9\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Removing the dropdown makes sense when you only have one additional language installed and don’t intend to change back to English for example. In this case you can simply install and activate the plugin. There are no futher settings.\u003C\u002Fp>\n\u003Ch3>What does this plugin do?\u003C\u002Fh3>\n\u003Cp>The plugin uses the default \u003Ca href=\"https:\u002F\u002Fdeveloper.wordpress.org\u002Fplugins\u002Fhooks\u002F\" rel=\"nofollow ugc\">WordPress Hooks API\u003C\u002Fa> and disables the language selector with the following one-liner:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter( 'login_display_language_dropdown', '__return_false' );\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Removes the language dropdown from the login screen.",2000,9257,100,5,"2022-05-19T17:53:00.000Z","6.0.11","5.8","5.6",[20,21,22,23],"clean","i18n","language","login","https:\u002F\u002Fgithub.com\u002Focean90\u002Fwordpress-disable-login-language-switcher","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdisable-login-language-switcher.1.0.0.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":32,"display_name":7,"profile_url":8,"plugin_count":33,"total_installs":34,"avg_security_score":35,"avg_patch_time_days":36,"trust_score":37,"computed_at":38},"ocean90",6,106260,90,30,87,"2026-04-04T13:48:11.431Z",[40,65,85,105,122],{"slug":41,"name":42,"version":43,"author":44,"author_profile":45,"description":46,"short_description":47,"active_installs":48,"downloaded":49,"rating":50,"num_ratings":51,"last_updated":52,"tested_up_to":53,"requires_at_least":54,"requires_php":55,"tags":56,"homepage":60,"download_link":61,"security_score":62,"vuln_count":63,"unpatched_count":27,"last_vuln_date":64,"fetched_at":29},"loco-translate","Loco Translate","2.8.3","Tim W","https:\u002F\u002Fprofiles.wordpress.org\u002Ftimwhitlock\u002F","\u003Cp>Loco Translate provides in-browser editing of WordPress translation files and integration with automatic translation services.\u003C\u002Fp>\n\u003Cp>It also provides Gettext\u002Flocalization tools for developers, such as extracting strings and generating templates.\u003C\u002Fp>\n\u003Cp>Features include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Built-in translation editor within WordPress admin\u003C\u002Fli>\n\u003Cli>Integration with translation APIs including DeepL, Google, Lecto, Microsoft and OpenAI.\u003C\u002Fli>\n\u003Cli>Create and update language files directly in your theme or plugin\u003C\u002Fli>\n\u003Cli>Extraction of translatable strings from your source code\u003C\u002Fli>\n\u003Cli>Native MO file compilation without the need for Gettext on your system\u003C\u002Fli>\n\u003Cli>JSON (Jed) file compilation compatible with WordPress script localization\u003C\u002Fli>\n\u003Cli>Support for standard PO features including comments, references and plural forms\u003C\u002Fli>\n\u003Cli>PO source view with clickable source code references\u003C\u002Fli>\n\u003Cli>Protected language directory for saving custom translations\u003C\u002Fli>\n\u003Cli>Configurable PO file backups with diff and restore capability\u003C\u002Fli>\n\u003Cli>Built-in WordPress locale codes\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Official \u003Ca href=\"https:\u002F\u002Flocalise.biz\u002F\" rel=\"nofollow ugc\">Loco\u003C\u002Fa> WordPress plugin by Tim Whitlock.\u003Cbr \u002F>\nFor more information please visit our \u003Ca href=\"https:\u002F\u002Flocalise.biz\u002Fwordpress\u002Fplugin\" rel=\"nofollow ugc\">plugin page\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Keyboard shortcuts\u003C\u002Fh3>\n\u003Cp>The PO file editor supports the following keyboard shortcuts for faster translating:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Done and Next: \u003Ccode>Ctrl ↵\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Next string: \u003Ccode>Ctrl \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">↓\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Previous string: \u003Ccode>Ctrl \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">↑\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Next untranslated: \u003Ccode>Shift Ctrl \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">↓\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Previous untranslated: \u003Ccode>Shift Ctrl \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">↑\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Copy from source text: \u003Ccode>Ctrl B\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Clear translation: \u003Ccode>Ctrl K\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Toggle Fuzzy: \u003Ccode>Ctrl U\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Save PO \u002F compile MO: \u003Ccode>Ctrl S\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Toggle invisibles: \u003Ccode>Shift Ctrl I\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Suggest translation: \u003Ccode>Ctrl J\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Mac users can use ⌘ Cmd instead of Ctrl.\u003C\u002Fp>\n","Translate WordPress plugins and themes directly in your browser. Versatile PO file editor with integrated AI translation providers.",1000000,34331592,96,447,"2026-03-14T11:53:00.000Z","6.9.4","6.6","7.4",[21,57,22,58,59],"l10n","multilingual","translation","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Floco-translate\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floco-translate.2.8.3.zip",95,4,"2026-03-30 15:35:09",{"slug":66,"name":67,"version":68,"author":69,"author_profile":70,"description":71,"short_description":72,"active_installs":73,"downloaded":74,"rating":75,"num_ratings":76,"last_updated":77,"tested_up_to":78,"requires_at_least":79,"requires_php":80,"tags":81,"homepage":83,"download_link":84,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"js-composer-qtranslate-x","WPBakery Visual Composer & qTranslate-X","1.0","John Clause","https:\u002F\u002Fprofiles.wordpress.org\u002Fjohnclause\u002F","\u003Cp>Enables \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fqtranslate-x\u002F\" rel=\"ugc\">qTranslate-X\u003C\u002Fa> multilingual framework for plugin \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fjs-composer-qtranslate-x\" rel=\"ugc\">WPBakery Visual Composer\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>At least version 3.3 of \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fqtranslate-x\u002F\" rel=\"ugc\">qTranslate-X\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FqTranslate-Team\u002Fqtranslate-x\u002Farchive\u002F3.2.9.9.4.zip\" rel=\"nofollow ugc\">alpha pre-release\u003C\u002Fa> is required.\u003C\u002Fp>\n\u003Cp>This plugin is currently a work in progress, please review the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fjs-composer-qtranslate-x\u002Fother_notes\u002F\" rel=\"ugc\">Known Issues\u003C\u002Fa> and report the features, which did not work for you.\u003C\u002Fp>\n\u003Ch3>Known Issues\u003C\u002Fh3>\n","Enables multilingual framework for plugin \"WPBakery Visual Composer\".",8000,149576,64,11,"2017-11-28T08:32:00.000Z","4.1.42","4.0","",[82,21,57,22,58],"bilingual","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fjs-composer-qtranslate-x","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fjs-composer-qtranslate-x.1.0.zip",{"slug":86,"name":87,"version":88,"author":89,"author_profile":90,"description":91,"short_description":92,"active_installs":11,"downloaded":93,"rating":13,"num_ratings":94,"last_updated":95,"tested_up_to":53,"requires_at_least":54,"requires_php":96,"tags":97,"homepage":100,"download_link":101,"security_score":102,"vuln_count":103,"unpatched_count":27,"last_vuln_date":104,"fetched_at":29},"preferred-languages","Preferred Languages","2.4.1","Pascal Birchler","https:\u002F\u002Fprofiles.wordpress.org\u002Fswissspidy\u002F","\u003Cp>Thanks to language packs it’s easier than ever before to change the main language of your site.\u003Cbr \u002F>\nHowever, in some cases a single locale is not enough. When WordPress can’t find a translation for the active locale, it falls back to the original English strings.\u003Cbr \u002F>\nThat’s a poor user experience for many non-English speakers.\u003C\u002Fp>\n\u003Cp>This feature project aims to change that by letting users choose multiple languages for displaying WordPress in.\u003Cbr \u002F>\nThat way you can set some sort of “fallback chain” where WordPress tries to load translations in your preferred order.\u003C\u002Fp>\n\u003Cp>Please help us test this plugin and let us know if something is not working as you think it should.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Keyboard Shortcuts\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>Arrow Up\u003C\u002Fcode>: Move selected locale one position up.\u003C\u002Fli>\n\u003Cli>\u003Ccode>Arrow Down\u003C\u002Fcode>: Move selected locale one position down.\u003C\u002Fli>\n\u003Cli>\u003Ccode>Home\u003C\u002Fcode>: Select first locale in the list.\u003C\u002Fli>\n\u003Cli>\u003Ccode>End\u003C\u002Fcode>: Select last locale in the list.\u003C\u002Fli>\n\u003Cli>\u003Ccode>Backspace\u003C\u002Fcode>\u002F\u003Ccode>Delete\u003C\u002Fcode>: remove the selected locale from the list.\u003C\u002Fli>\n\u003Cli>\u003Ccode>Alt+A\u003C\u002Fcode>: Add the current locale from the dropdown to the list.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Note\u003C\u002Fstrong>: the Preferred Languages UI needs to be focused in order for the keyboard shortcuts to work.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Merging Translations\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Previously, only the first available translation for a given locale and domain will be loaded.\u003Cbr \u002F>\nHowever, when translations are incomplete, some strings might still be displayed in English.\u003Cbr \u002F>\nThat’s a poor user experience as well.\u003C\u002Fp>\n\u003Cp>To prevent this, Preferred Languages now automatically merges all incomplete translations in the list.\u003C\u002Fp>\n\u003Cp>the \u003Ccode>preferred_languages_merge_translations\u003C\u002Fcode> filter can be used to opt out of this behavior.\u003Cbr \u002F>\nIt provides three parameters:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Ccode>$merge\u003C\u002Fcode> – Whether translations should be merged. Defaults to \u003Ccode>true\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>\u003Ccode>$domain\u003C\u002Fcode> – The text domain\u003C\u002Fli>\n\u003Cli>\u003Ccode>$current_locale\u003C\u002Fcode> – The current locale.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Get Involved\u003C\u002Fh4>\n\u003Cp>Active development is taking place on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fswissspidy\u002Fpreferred-languages\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>If you want to get involved, check out \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fswissspidy\u002Fpreferred-languages\u002Fissues\" rel=\"nofollow ugc\">open issues\u003C\u002Fa> and join the \u003Ca href=\"https:\u002F\u002Fwordpress.slack.com\u002Fmessages\u002Fcore-i18n\" rel=\"nofollow ugc\">#core-i18n\u003C\u002Fa> channel on \u003Ca href=\"https:\u002F\u002Fwordpress.slack.com\u002F\" rel=\"nofollow ugc\">Slack\u003C\u002Fa>. If you don’t have a Slack account yet, you can sign up at \u003Ca href=\"https:\u002F\u002Fmake.wordpress.org\u002Fchat\u002F\" rel=\"nofollow ugc\">make.wordpress.org\u002Fchat\u002F\u003C\u002Fa>.\u003C\u002Fp>\n","Choose languages for displaying WordPress in, in order of preference.",108228,17,"2025-11-28T15:06:00.000Z","7.2.24",[21,98,22,99,59],"internationalization","localization","https:\u002F\u002Fgithub.com\u002Fswissspidy\u002Fpreferred-languages\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpreferred-languages.2.4.1.zip",99,1,"2024-05-30 00:00:00",{"slug":106,"name":107,"version":108,"author":109,"author_profile":110,"description":111,"short_description":112,"active_installs":113,"downloaded":114,"rating":13,"num_ratings":115,"last_updated":116,"tested_up_to":53,"requires_at_least":117,"requires_php":18,"tags":118,"homepage":120,"download_link":121,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"disable-login-language-selector","Disable Login Language Selector","1.0.1","Rick Curran","https:\u002F\u002Fprofiles.wordpress.org\u002Frickcurran\u002F","\u003Cp>WordPress 5.9 added a new language selector to allow users to switch languages from a dropdown on the login screen if more than one language is enabled on your WordPress installation. This plugin provides a quick and easy way to prevent this language selector from appearing.\u003C\u002Fp>\n\u003Cp>It is a very simple plugin which is provided for ease of use: you need only to install and activate the plugin and it will prevent the language dropdown from appearing on the login screen of your site.\u003C\u002Fp>\n\u003Cp>Alternatively, you can also achieve the same effect by adding the following line of code to the \u003Ccode>functions.php\u003C\u002Fcode> file in your theme:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter( 'login_display_language_dropdown', '__return_false' );\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Remove the language selector from the login screen if you have more than one language enabled in WordPress 5.9 and later.",1000,6108,3,"2026-01-30T18:02:00.000Z","5.9",[119,23],"languages","https:\u002F\u002Fqreate.co.uk\u002Fprojects\u002F#login-language-selector","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdisable-login-language-selector.1.0.1.zip",{"slug":123,"name":124,"version":6,"author":125,"author_profile":126,"description":127,"short_description":128,"active_installs":129,"downloaded":130,"rating":27,"num_ratings":27,"last_updated":131,"tested_up_to":132,"requires_at_least":133,"requires_php":134,"tags":135,"homepage":141,"download_link":142,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"hide-language-switcher","Hide Language Switcher","wp-ave.com","https:\u002F\u002Fprofiles.wordpress.org\u002Fziher4\u002F","\u003Cp>Hides language switcher feature from login screens introduced in WordPress 5.9\u003C\u002Fp>\n\u003Cp>Features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Simply activate this plugin to hide language switcher feature from login screens introduced in WordPress 5.9\u003C\u002Fli>\n\u003C\u002Ful>\n","Hides language switcher feature from login screens introduced in WordPress 5.9",50,1105,"2022-01-28T00:52:00.000Z","5.9.13","4.7","7.0",[136,137,138,139,140],"disable","hide","language-switcher","login-screen","remove","http:\u002F\u002Falexportfolio.space\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fhide-language-switcher.zip",{"attackSurface":144,"codeSignals":156,"taintFlows":163,"riskAssessment":164,"analyzedAt":172},{"hooks":145,"ajaxHandlers":152,"restRoutes":153,"shortcodes":154,"cronEvents":155,"entryPointCount":27,"unprotectedCount":27},[146],{"type":147,"name":148,"callback":149,"file":150,"line":151},"filter","login_display_language_dropdown","__return_false","disable-login-language-switcher.php",16,[],[],[],[],{"dangerousFunctions":157,"sqlUsage":158,"outputEscaping":160,"fileOperations":27,"externalRequests":27,"nonceChecks":27,"capabilityChecks":27,"bundledLibraries":162},[],{"prepared":27,"raw":27,"locations":159},[],{"escaped":27,"rawEcho":27,"locations":161},[],[],[],{"summary":165,"deductions":166},"The \"disable-login-language-switcher\" plugin v1.0.0 demonstrates a strong security posture based on the provided static analysis. The absence of any detected dangerous functions, unsanitized taint flows, direct SQL queries, or file operations is highly commendable. Furthermore, the complete lack of known vulnerabilities in its history suggests a well-maintained and secure codebase.\n\nHowever, the static analysis reveals a significant concern: the complete absence of nonce checks and capability checks. While the current attack surface is zero, any future introduction of functionalities, particularly those exposed via AJAX or REST API, without proper authorization and security checks would immediately introduce critical vulnerabilities. The plugin's design currently relies on its limited functionality to remain secure, which is a brittle security model.\n\nIn conclusion, while the plugin is currently secure due to its minimal functionality and lack of historical vulnerabilities, it lacks fundamental security mechanisms for future extensibility. Developers should prioritize implementing nonce and capability checks to ensure ongoing security if the plugin's features are ever expanded.",[167,170],{"reason":168,"points":169},"Missing nonce checks",10,{"reason":171,"points":169},"Missing capability checks","2026-03-16T18:40:12.128Z",{"wat":174,"direct":179},{"assetPaths":175,"generatorPatterns":176,"scriptPaths":177,"versionParams":178},[],[],[],[],{"cssClasses":180,"htmlComments":181,"htmlAttributes":182,"restEndpoints":183,"jsGlobals":184,"shortcodeOutput":185},[],[],[],[],[],[]]