[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fwNhOJOsQuu_pKO39TrXMX1HXt9OXBEuZSikLauglxyE":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":29,"last_vuln_date":30,"fetched_at":31,"vulnerabilities":32,"developer":49,"crawl_stats":38,"alternatives":54,"analysis":140,"fingerprints":284},"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.",2000,108228,100,17,"2025-11-28T15:06:00.000Z","6.9.4","6.6","7.2.24",[20,21,22,23,24],"i18n","internationalization","language","localization","translation","https:\u002F\u002Fgithub.com\u002Fswissspidy\u002Fpreferred-languages\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpreferred-languages.2.4.1.zip",99,1,0,"2024-05-30 00:00:00","2026-03-15T15:16:48.613Z",[33],{"id":34,"url_slug":35,"title":36,"description":37,"plugin_slug":4,"theme_slug":38,"affected_versions":39,"patched_in_version":40,"severity":41,"cvss_score":42,"cvss_vector":43,"vuln_type":44,"published_date":30,"updated_date":45,"references":46,"days_to_patch":48},"CVE-2024-35644","preferred-languages-authenticated-administrator-stored-cross-site-scripting","Preferred Languages \u003C= 2.2.2 - Authenticated (Administrator+) Stored Cross-Site Scripting","The Preferred Languages plugin for WordPress is vulnerable to Stored Cross-Site Scripting via admin settings in all versions up to, and including, 2.2.2 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with administrator-level permissions and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. This only affects multi-site installations and installations where unfiltered_html has been disabled.",null,"\u003C=2.2.2","2.3.0","medium",4.4,"CVSS:3.1\u002FAV:N\u002FAC:H\u002FPR:H\u002FUI:N\u002FS:C\u002FC:L\u002FI:L\u002FA:N","Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","2024-06-05 14:17:20",[47],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F8f1866d6-79ac-444c-ab73-eab081786c93?source=api-prod",7,{"slug":50,"display_name":7,"profile_url":8,"plugin_count":51,"total_installs":52,"avg_security_score":13,"avg_patch_time_days":48,"trust_score":13,"computed_at":53},"swissspidy",4,52700,"2026-04-04T05:53:24.612Z",[55,72,91,105,124],{"slug":56,"name":57,"version":58,"author":7,"author_profile":8,"description":59,"short_description":60,"active_installs":61,"downloaded":62,"rating":63,"num_ratings":64,"last_updated":65,"tested_up_to":16,"requires_at_least":66,"requires_php":67,"tags":68,"homepage":70,"download_link":71,"security_score":13,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"performant-translations","Performant Translations","1.2.0","\u003Cp>Making internationalization\u002Flocalization in WordPress faster than ever before.\u003C\u002Fp>\n\u003Ch3>Disclaimer about WordPress 6.5\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Attention:\u003C\u002Fstrong> most functionality of this plugin has been merged into WordPress 6.5! You might not need it anymore.\u003C\u002Fp>\n\u003Cp>\u003Cem>However\u003C\u002Fem>, this plugin is still relevant for cases where language packs are not downloaded from WordPress.org but somewhere else, for example if you are developing your own plugins or using commercial plugins.\u003C\u002Fp>\n\u003Cp>The Performant Translations plugin converts the translation files of those plugins to the new file format introduced in WordPress 6.5, to really optimize them for speed.\u003C\u002Fp>\n\u003Ch3>What this plugin does\u003C\u002Fh3>\n\u003Cp>This project uses a new approach to handle translation files in WordPress, making localization blazing fast.\u003C\u002Fp>\n\u003Cp>An \u003Ca href=\"https:\u002F\u002Fmake.wordpress.org\u002Fcore\u002F2023\u002F07\u002F24\u002Fi18n-performance-analysis\u002F\" rel=\"nofollow ugc\">in-depth i18n performance analysis\u003C\u002Fa> showed that localized WordPress sites load significantly slower than a site without translations.\u003C\u002Fp>\n\u003Cp>With this plugin’s new approach to localization, this overhead is massively reduced, making your site fast again. It does so by converting \u003Ccode>.mo\u003C\u002Fcode> translation files to \u003Ccode>.php\u003C\u002Fcode> files.\u003C\u002Fp>\n\u003Cp>If your site is using a language other than English (US), you should see immediate speed improvements simply by activating this plugin.\u003C\u002Fp>\n","Making internationalization\u002Flocalization in WordPress faster than ever before.",40000,192704,98,16,"2025-12-05T10:38:00.000Z","6.5","7.0",[20,21,23,69,24],"performance","https:\u002F\u002Fgithub.com\u002Fswissspidy\u002Fperformant-translations","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fperformant-translations.1.2.0.zip",{"slug":73,"name":74,"version":75,"author":76,"author_profile":77,"description":78,"short_description":79,"active_installs":13,"downloaded":80,"rating":13,"num_ratings":81,"last_updated":82,"tested_up_to":83,"requires_at_least":84,"requires_php":85,"tags":86,"homepage":89,"download_link":90,"security_score":13,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"translation-tools","Translation Tools","1.7.2","Pedro Mendonça","https:\u002F\u002Fprofiles.wordpress.org\u002Fpedromendonca\u002F","\u003Ch3>Use any Locale, with or without Language Packs\u003C\u002Fh3>\n\u003Cp>With core Language Packs you can easily change the language of your WordPress install.\u003C\u002Fp>\n\u003Cp>The Language Packs used to be provided only for 100% translated Locales.\u003C\u002Fp>\n\u003Cp>To give teams with less contributors a better chance to get WordPress released into their Locale, since \u003Ca href=\"https:\u002F\u002Fmake.wordpress.org\u002Fpolyglots\u002F2021\u002F02\u002F22\u002Fwordpress-5-7-ready-to-be-translated\u002F\" rel=\"nofollow ugc\">22nd February 2021\u003C\u002Fa> the required translation status for core Language Packs to be built are as follows:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp\u002Fdev\u002F\" rel=\"nofollow ugc\">Front-end project\u003C\u002Fa> needs to be translated at least \u003Cstrong>90%\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>The \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp\u002Fdev\u002Fadmin\u002F\" rel=\"nofollow ugc\">Administration project\u003C\u002Fa> needs to be translated at least \u003Cstrong>75%\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>The \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp\u002Fdev\u002Fadmin\u002Fnetwork\u002F\" rel=\"nofollow ugc\">Network Admin\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp\u002Fdev\u002Fcc\u002F\" rel=\"nofollow ugc\">Continent & Cities\u003C\u002Fa> projects are not included in the threshold calculation.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>If you need a Locale that has no Language Packs yet, this tool helps you by enabling ALL Locales on the list of the available languages.\u003C\u002Fp>\n\u003Ch3>Compatible with plugin \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fpreferred-languages\u002F\" rel=\"ugc\">Preferred Languages\u003C\u002Fa>\u003C\u002Fh3>\n\u003Cp>The plugin \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fpreferred-languages\u002F\" rel=\"ugc\">Preferred Languages\u003C\u002Fa> overrides the standard languages field for site and user languages.\u003C\u002Fp>\n\u003Cp>All the features added by Translation Tools are available for Preferred Languages users.\u003C\u002Fp>\n\u003Ch3>Update your WordPress, Plugins or Themes translation, on demand\u003C\u002Fh3>\n\u003Cp>If you need to update your WordPress core, Plugins or Themes translations on demand without waiting for a language pack to be generated, this tool allows you to manually update all the needed files for the installed version, with one click, in a few seconds.\u003C\u002Fp>\n\u003Cp>Go to “Translations” on the Updates screen and choose what you want to update.\u003C\u002Fp>\n\u003Ch4>All WordPress core sub-projects\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Development\u003C\u002Fli>\n\u003Cli>Continents & Cities\u003C\u002Fli>\n\u003Cli>Administration\u003C\u002Fli>\n\u003Cli>Network Admin\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>All translation files\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>.po (editable translation files)\u003C\u002Fli>\n\u003Cli>.mo (binary translation files)\u003C\u002Fli>\n\u003Cli>.l10n.php (PHP performant translation files)\u003C\u002Fli>\n\u003Cli>.json (JavaScript translation files)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>WordPress Translations tests and info in Site Health\u003C\u002Fh3>\n\u003Cp>Check your WordPress core translations in Site Health tests page.\u003C\u002Fp>\n\u003Cp>The Site Health debug info shows the selected site and user languages, including multiple languages from the plugin Preferred Languages.\u003C\u002Fp>\n","Translation tools for your WordPress install.",9359,3,"2025-04-16T11:06:00.000Z","6.6.5","4.9","7.4",[87,21,88,23,24],"core","language-packs","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ftranslation-tools\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftranslation-tools.1.7.2.zip",{"slug":92,"name":93,"version":94,"author":76,"author_profile":77,"description":95,"short_description":96,"active_installs":97,"downloaded":98,"rating":13,"num_ratings":99,"last_updated":100,"tested_up_to":16,"requires_at_least":84,"requires_php":85,"tags":101,"homepage":103,"download_link":104,"security_score":13,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"translation-stats","Translation Stats","1.3.2","\u003Cp>The plugin adds a “Translation Stats” column to the plugin list screen in WordPress admin.\u003C\u002Fp>\n\u003Cp>The translation stats are shown only for plugins that exist in \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002F\" rel=\"nofollow ugc\">translate.wordpress.org\u003C\u002Fa> and are \u003Ca href=\"https:\u002F\u002Fdeveloper.wordpress.org\u002Fplugins\u002Finternationalization\u002Fhow-to-internationalize-your-plugin\u002F\" rel=\"nofollow ugc\">prepared for localization\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>If a plugin doesn’t have complete translation stats, you’ll see a notice with one of the reasons below:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Plugin not found on WordPress.org\u003C\u002Fli>\n\u003Cli>Translation project not found on WordPress.org\u003C\u002Fli>\n\u003Cli>The plugin is not properly prepared for localization\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The color scheme of the translation stats bars is exactly same used in \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fglotpress\u002F\" rel=\"ugc\">GlotPress\u003C\u002Fa> for consistency with the translation experience in \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002F\" rel=\"nofollow ugc\">translate.wp.org\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>This plugin is properly prepared for localization.\u003C\u002Fp>\n","Show plugins translation stats on your WordPress install.",20,8734,6,"2025-10-04T15:19:00.000Z",[20,21,102,23,24],"l10n","https:\u002F\u002Ftranslationstats.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftranslation-stats.1.3.2.zip",{"slug":106,"name":107,"version":108,"author":109,"author_profile":110,"description":111,"short_description":112,"active_installs":113,"downloaded":114,"rating":29,"num_ratings":29,"last_updated":115,"tested_up_to":116,"requires_at_least":117,"requires_php":118,"tags":119,"homepage":121,"download_link":122,"security_score":123,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"icanlocalize-translator","ICanLocalize Translator","1.3.1","Amir Helzer","https:\u002F\u002Fprofiles.wordpress.org\u002Famirhelzer\u002F","\u003Cp>“ICanLocalize Translator” allows running multi-lingual WordPress websites (See the \u003Ca href=\"http:\u002F\u002Fmedia.icanlocalize.com\u002Fwp_translation_demos\u002Ficanlocalize-translator.htm\" rel=\"nofollow ugc\">5 minute demo\u003C\u002Fa>).\u003Cbr \u002F>\nIt helps maintain contents in different languages and automatically links between them.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Blog in your native language. Translations will be created automatically.\u003C\u002Fli>\n\u003Cli>Use different domains, \u003Ccode>www.myblog.com\u003C\u002Fcode>, \u003Ccode>es.myblog.com\u003C\u002Fcode>, \u003Ccode>de.myblog.com\u003C\u002Fcode> or directories within the same domain.\u003C\u002Fli>\n\u003Cli>Updates are handled automatically. When the original contents update, translations follow.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>WordPress supports contents in a single language. To make multi-lingual WordPress sites insensitive to upgrades and to other plugins,\u003Cbr \u002F>\nICanLocalize Translator doesn’t change any table structure and doesn’t alter permlinks. Instead, each language will run in its own WordPress instance.\u003C\u002Fp>\n\u003Ch4>Is this machine translation?\u003C\u002Fh4>\n\u003Cp>Unlike free machine translators, this plugin will send posts and pages to be translated by real people.\u003Cbr \u002F>\nYou can select from our pool of professional translators or assign the work to your favorite translator.\u003C\u002Fp>\n\u003Cp>This plugin works together with \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Ficanlocalize-comment-translator\u002F\" rel=\"ugc\">ICanLocalize Comment Translator Plugin\u003C\u002Fa>.\u003Cbr \u002F>\nIt needs to be installed in the original-language blog. The Comment Translator plugin will be installed in the translated-language blog(s).\u003C\u002Fp>\n\u003Ch4>Running a multi-lingual site\u003C\u002Fh4>\n\u003Cp>Even though visitors read and comment in their languages, and You will do all your tasks (including comment moderation and replies) in your own language.\u003C\u002Fp>\n\u003Cp>Comment moderation in your language is handled by \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Ficanlocalize-comment-translator\u002F\" rel=\"ugc\">ICanLocalize Comment Translator Plugin\u003C\u002Fa> which needs to be install on each of the translated blogs.\u003C\u002Fp>\n\u003Cp>The plugin provides a function that you can include in your theme which automatically links between contents in different languages.\u003C\u002Fp>\n\u003Ch4>What gets translated\u003C\u002Fh4>\n\u003Cp>The plugin will automatically send all texts to be translated, including:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Posts\u003C\u002Fli>\n\u003Cli>Pages\u003C\u002Fli>\n\u003Cli>Tags\u003C\u002Fli>\n\u003Cli>Categories (names and descriptions)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Where can I see some examples?\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fblog-en.icanlocalize.com\" rel=\"nofollow ugc\">Our own blog\u003C\u002Fa> is being translated by our system from English to French.\u003Cbr \u002F>\nYou’re invited to \u003Ca href=\"http:\u002F\u002Fwww.icanlocalize.com\u002Fweb_dialogs\u002Fnew?language_id=1&store=4\" rel=\"nofollow ugc\">contact us\u003C\u002Fa> for other examples.\u003C\u002Fp>\n\u003Ch4>SitePress\u003C\u002Fh4>\n\u003Cp>This plugin is part of \u003Ca href=\"http:\u002F\u002Fsitepress.org\" rel=\"nofollow ugc\">SitePress\u003C\u002Fa> – a collection of plugins that turn WordPress into a fully featured multilingual content management system.\u003C\u002Fp>\n\u003Ch3>Version History\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Version 0.4\n\u003Cul>\n\u003Cli>First public release\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Version 0.5\n\u003Cul>\n\u003Cli>Improved support for page hierarchy\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Version 0.6\n\u003Cul>\n\u003Cli>Works with WordPress MU\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Version 1.0\n\u003Cul>\n\u003Cli>Users can cancel translation jobs\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Version 1.3\n\u003Cul>\n\u003Cli>Includes drop down language switcher that can be added to header.php.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Version 1.3.1\n\u003Cul>\n\u003Cli>Dropdown language selector now support IE6\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n","Allows running multilingual WordPress sites with zero management. Automatically creates and updates translation when you edit.",10,6526,"2009-02-05T19:19:00.000Z","2.7","2.5.1","",[20,22,23,120,24],"multilingual","http:\u002F\u002Fsitepress.org\u002Fwordpress-translation\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ficanlocalize-translator.1.3.1.zip",85,{"slug":125,"name":126,"version":127,"author":128,"author_profile":129,"description":130,"short_description":131,"active_installs":113,"downloaded":132,"rating":29,"num_ratings":29,"last_updated":133,"tested_up_to":134,"requires_at_least":135,"requires_php":118,"tags":136,"homepage":138,"download_link":139,"security_score":123,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"translator-with-baidu-service","Translator with Baidu Service","1.10","gongwan33","https:\u002F\u002Fprofiles.wordpress.org\u002Fgongwan33\u002F","\u003Cp>Translate your site in many languages with this plugin from JoyBin, Inc. (The service provider is Baidu.) Currently we support 25 languages: Chinese, English, Japanese, Korean, French, Spanish, Thai, Arabic, Russian, Portuguese, German, Italian, Greek, Dutch, Polish, Bulgarian, Estonia, Danish, Finnish, Czech, Romanian, Slovenia, Swedish, Hungarian, Vietnamese. And we support 4 kinds of Chinese: Simplified Chinese, Cantonese, Classical Chinese and Traditional Chinese.\u003C\u002Fp>\n","Translate your site in many languages with this plugin from JoyBin, Inc. The translating service provider is Baidu.",2837,"2017-02-23T04:34:00.000Z","4.7.32","3.8",[20,21,23,24,137],"translator","http:\u002F\u002Fwww.joybin.cn\u002Fwordpress-plugins\u002Ftranslator-with-baidu-service.html","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftranslator-with-baidu-service.zip",{"attackSurface":141,"codeSignals":269,"taintFlows":277,"riskAssessment":278,"analyzedAt":283},{"hooks":142,"ajaxHandlers":265,"restRoutes":266,"shortcodes":267,"cronEvents":268,"entryPointCount":29,"unprotectedCount":29},[143,148,153,156,158,162,166,170,174,178,181,185,188,192,196,200,203,207,210,214,218,222,227,231,235,239,243,247,249,251,253,255,257,259,261,263],{"type":144,"name":145,"callback":146,"priority":113,"file":147,"line":64},"filter","lang_dir_for_domain","preferred_languages_filter_lang_dir_for_domain","inc\\functions.php",{"type":149,"name":150,"callback":151,"file":147,"line":152},"action","init","preferred_languages_register_setting",18,{"type":149,"name":150,"callback":154,"file":147,"line":155},"preferred_languages_register_meta",19,{"type":149,"name":150,"callback":157,"file":147,"line":97},"preferred_languages_register_scripts",{"type":149,"name":159,"callback":160,"file":147,"line":161},"admin_init","preferred_languages_settings_field",22,{"type":149,"name":163,"callback":164,"file":147,"line":165},"wpmu_options","preferred_languages_network_settings_field",23,{"type":149,"name":167,"callback":168,"file":147,"line":169},"update_wpmu_options","preferred_languages_update_network_settings",24,{"type":149,"name":171,"callback":172,"file":147,"line":173},"personal_options","preferred_languages_personal_options",26,{"type":149,"name":175,"callback":176,"file":147,"line":177},"personal_options_update","preferred_languages_update_user_option",27,{"type":149,"name":179,"callback":176,"file":147,"line":180},"edit_user_profile_update",28,{"type":144,"name":182,"callback":183,"priority":113,"file":147,"line":184},"pre_update_option_preferred_languages","preferred_languages_pre_update_option",30,{"type":144,"name":186,"callback":183,"priority":113,"file":147,"line":187},"pre_update_site_option_preferred_languages",31,{"type":149,"name":189,"callback":190,"priority":113,"file":147,"line":191},"add_option_preferred_languages","preferred_languages_add_option",32,{"type":149,"name":193,"callback":194,"priority":113,"file":147,"line":195},"update_option_preferred_languages","preferred_languages_update_option",33,{"type":149,"name":197,"callback":198,"priority":113,"file":147,"line":199},"add_site_option_preferred_languages","preferred_languages_update_site_option",34,{"type":149,"name":201,"callback":198,"priority":113,"file":147,"line":202},"update_site_option_preferred_languages",35,{"type":144,"name":204,"callback":205,"file":147,"line":206},"pre_option_WPLANG","preferred_languages_filter_option",36,{"type":144,"name":208,"callback":205,"file":147,"line":209},"pre_site_option_WPLANG",37,{"type":149,"name":211,"callback":212,"priority":113,"file":147,"line":213},"add_user_meta","preferred_languages_add_user_meta",38,{"type":149,"name":215,"callback":216,"priority":113,"file":147,"line":217},"update_user_meta","preferred_languages_update_user_meta",39,{"type":144,"name":219,"callback":220,"priority":113,"file":147,"line":221},"get_user_metadata","preferred_languages_filter_user_locale",40,{"type":144,"name":223,"callback":224,"priority":225,"file":147,"line":226},"locale","preferred_languages_filter_locale",5,41,{"type":144,"name":228,"callback":229,"priority":113,"file":147,"line":230},"override_load_textdomain","preferred_languages_override_load_textdomain",42,{"type":144,"name":232,"callback":233,"priority":113,"file":147,"line":234},"load_textdomain_mofile","preferred_languages_load_textdomain_mofile",43,{"type":144,"name":236,"callback":237,"priority":113,"file":147,"line":238},"pre_load_script_translations","preferred_languages_pre_load_script_translations",44,{"type":144,"name":240,"callback":241,"file":147,"line":242},"load_script_translation_file","preferred_languages_load_script_translation_file",45,{"type":144,"name":244,"callback":245,"file":147,"line":246},"debug_information","preferred_languages_filter_debug_information",47,{"type":144,"name":219,"callback":220,"priority":113,"file":147,"line":248},188,{"type":144,"name":204,"callback":205,"file":147,"line":250},399,{"type":144,"name":204,"callback":205,"file":147,"line":252},433,{"type":144,"name":208,"callback":205,"file":147,"line":254},463,{"type":144,"name":228,"callback":229,"priority":113,"file":147,"line":256},697,{"type":144,"name":232,"callback":233,"file":147,"line":258},698,{"type":144,"name":236,"callback":237,"priority":113,"file":147,"line":260},857,{"type":144,"name":240,"callback":241,"file":147,"line":262},858,{"type":144,"name":145,"callback":146,"priority":113,"file":147,"line":264},1258,[],[],[],[],{"dangerousFunctions":270,"sqlUsage":271,"outputEscaping":273,"fileOperations":29,"externalRequests":29,"nonceChecks":274,"capabilityChecks":51,"bundledLibraries":276},[],{"prepared":29,"raw":29,"locations":272},[],{"escaped":274,"rawEcho":29,"locations":275},2,[],[],[],{"summary":279,"deductions":280},"The \"preferred-languages\" plugin, version 2.4.1, exhibits a generally strong security posture based on the static analysis.  The plugin demonstrates good development practices by having no identified unprotected entry points, no dangerous functions, and utilizing prepared statements for all SQL queries.  Furthermore, all output is properly escaped, and necessary security checks like nonce and capability checks are implemented. The absence of file operations and external HTTP requests also minimizes potential attack vectors.\n\nHowever, the plugin's vulnerability history is a significant concern.  Despite the current analysis showing no unpatched vulnerabilities, the presence of one previously known CVE, specifically a Cross-site Scripting (XSS) vulnerability, indicates a past weakness.  The fact that this vulnerability was recently patched suggests that the developers are addressing security issues, but it also highlights that the plugin has been susceptible to attacks.  The lack of any taint flow analysis results is also a neutral observation, as it doesn't necessarily indicate security, but rather the absence of identified issues within the scope of the analysis.\n\nIn conclusion, while the current static analysis for version 2.4.1 is reassuring, the past XSS vulnerability should not be overlooked.  Users should remain vigilant and ensure they are always running the latest patched version of the plugin. The absence of a large attack surface and adherence to many security best practices are positive, but the historical vulnerability warrants a cautious approach.",[281],{"reason":282,"points":113},"Past medium severity XSS vulnerability","2026-03-16T18:28:16.440Z",{"wat":285,"direct":294},{"assetPaths":286,"generatorPatterns":289,"scriptPaths":290,"versionParams":291},[287,288],"\u002Fwp-content\u002Fplugins\u002Fpreferred-languages\u002Fadmin\u002Fcss\u002Fsettings.css","\u002Fwp-content\u002Fplugins\u002Fpreferred-languages\u002Fadmin\u002Fjs\u002Fsettings.js",[],[],[292,293],"preferred-languages\u002Fadmin\u002Fcss\u002Fsettings.css?ver=","preferred-languages\u002Fadmin\u002Fjs\u002Fsettings.js?ver=",{"cssClasses":295,"htmlComments":298,"htmlAttributes":299,"restEndpoints":301,"jsGlobals":303,"shortcodeOutput":305},[296,297],"preferred-languages-settings-section","preferred-languages-notice",[],[300],"data-preferred-languages-locale-list",[302],"\u002Fwp-json\u002Fpreferred-languages\u002Fv1\u002Foptions",[304],"preferred_languages_settings_params",[]]