[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f1VxsFtkyirB7MQLKZn9o2WkAZjyDru1wiLZ4bL-pr98":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":13,"last_updated":14,"tested_up_to":15,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":16,"download_link":21,"security_score":22,"vuln_count":13,"unpatched_count":13,"last_vuln_date":23,"fetched_at":24,"vulnerabilities":25,"developer":26,"crawl_stats":23,"alternatives":31,"analysis":125,"fingerprints":233},"transliterado","Transliterado","0.8","bertilow","https:\u002F\u002Fprofiles.wordpress.org\u002Fbertilow\u002F","\u003Cp>This plugin gives better transliteration of non-ASCII characters in slugs. Currently covers Esperanto, Swedish, Finnish, Danish, Norwegian, German, Russian and Bulgarian. It can also handle dashes.\u003C\u002Fp>\n\u003Cp>When WordPress creates slugs for the titles of posts and pages, and for tags and categories, it makes them all-ASCII, which among other things means removing diacritics (e.g. “é” becomes “e”, “ö” becomes “o”, “ĉ” becomes “c”, etc.). For some languages the default filtering is OK, but for others it gives very bad results. The results for languages that don’t even use a Latin script are especially unsatisfactory. The plugin Transliterado provides better transliteration systems for some languages. You can choose which of those systems should be used for your slugs. For some languages more than one transliteration system is available. Transliterado can also go through already existing posts and pages, and redo their slugs, if the user chooses that option. Another option does the same for tags and categories.\u003C\u002Fp>\n\u003Cp>Significant parts of the code comes from the plugins Rustolat by Anton Skorobogatov, BGtoLat by Ognyan Mladenov, and Slugger by Hans Christian Saustrup.\u003C\u002Fp>\n\u003Cp>Maybe you want to add systems for other languages. It’s very easy to do. Have a look at the files for the languages that are in the plugin package already. I’ll be happy to include any additions that are sent to me: “bertilow” at “gmail.com”.\u003C\u002Fp>\n\u003Cp>Priskribo:\u003C\u002Fp>\n\u003Cp>Ĉi tiu kromprogramo donas pli bonan transliteradon de ne-Askiaj literoj en URL-nomoj. Nun prizorgataj estas Esperanto, la Sveda, la Finna, la Dana, la Norvega, la Germana, la Rusa kaj la Bulgara.\u003C\u002Fp>\n\u003Cp>Kiam WordPress kreas URL-nomojn por afiŝoj kaj paĝoj, kaj por etikedoj kaj kategorioj, ĝi transformas ilin al Askio, kio interalie signifas, ke ĝi forigas ĉiujn kromsignojn (ekz. “é” fariĝas “e”, “ö” fariĝas “o”, “ĉ” fariĝas “c”, k.t.p.). Por iuj lingvoj la defaŭlta filtrado estas en ordo, sed por aliaj ĝi donas tre malbonan rezulton. Precipe nekontentigaj estas la rezultoj por lingvoj, kiuj eĉ ne uzas la Latinan alfabeton. La kromprogramo Transliterado provizas pli bonajn transliteradajn sistemojn por kelkaj lingvoj. Oni povas elekti, kiuj el tiuj sistemoj estu uzataj por URL-nomoj. Por iuj lingvoj haveblas pli ol unu transliterada sistemo. Transliterado ankaŭ povas prilabori jam ekzistantajn afiŝojn kaj paĝoj, refarante ties URL-nomojn, se la uzanto elektas tiun eblon. Alia eblo faras la samon pri etikedoj kaj kategorioj.\u003C\u002Fp>\n\u003Cp>Gravaj partoj de la kodo venas el la kromprogramoj Rustolat de Anton Skorobogatov, BGtoLat de Ognyan Mladenov, kaj Slugger de Hans Christian Saustrup.\u003C\u002Fp>\n\u003Cp>Eble vi volas aldoni sistemojn por aliaj lingvoj. Tio estas tre facila. Rigardu la dosierojn de tiuj lingvoj, kiuj jam estas en la kromprograma paketo. Mi volonte enmetos aldonojn, kiujn vi sendos al mi: “bertilow” ĉe “gmail.com”.\u003C\u002Fp>\n\u003Ch3>Licence \u002F Licenco\u003C\u002Fh3>\n\u003Cp>This plugin is released under the GPL licence. You can use it free of charge.\u003C\u002Fp>\n\u003Cp>Tiu ĉi kromprogramo estas publikigita sub la licenco GPL. Vi rajtas uzi ĝin senkoste.\u003C\u002Fp>\n\u003Ch3>Translations \u002F Tradukoj\u003C\u002Fh3>\n\u003Cp>The basic language of Transliterado is Esperanto. There are translations into English, Swedish, Finnish, German, Russian and Bulgarian. More translations are of course welcome: “bertilow” at “gmail.com”.\u003C\u002Fp>\n\u003Cp>La baza lingvo de Transliterado estas Esperanto. Ekzistas tradukoj en la Anglan, la Svedan, la Finnan, la Germanan, la Rusan kaj la Bulgaran. Pliaj tradukoj estos bonvenaj: “bertilow” ĉe “gmail.com”.\u003C\u002Fp>\n","This plugin gives better transliteration of non-ASCII characters in slugs.",300,14496,0,"2010-06-03T17:09:00.000Z","2.5","",[18,19,20],"i18n","internationalization","slugs","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftransliterado.0.8.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":27,"total_installs":11,"avg_security_score":22,"avg_patch_time_days":28,"trust_score":29,"computed_at":30},1,30,84,"2026-04-04T15:56:56.278Z",[32,55,73,91,108],{"slug":33,"name":34,"version":35,"author":36,"author_profile":37,"description":38,"short_description":39,"active_installs":40,"downloaded":41,"rating":42,"num_ratings":43,"last_updated":44,"tested_up_to":45,"requires_at_least":46,"requires_php":47,"tags":48,"homepage":52,"download_link":53,"security_score":54,"vuln_count":13,"unpatched_count":13,"last_vuln_date":23,"fetched_at":24},"performant-translations","Performant Translations","1.2.0","Pascal Birchler","https:\u002F\u002Fprofiles.wordpress.org\u002Fswissspidy\u002F","\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.9.4","6.5","7.0",[18,19,49,50,51],"localization","performance","translation","https:\u002F\u002Fgithub.com\u002Fswissspidy\u002Fperformant-translations","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fperformant-translations.1.2.0.zip",100,{"slug":56,"name":57,"version":58,"author":36,"author_profile":37,"description":59,"short_description":60,"active_installs":61,"downloaded":62,"rating":54,"num_ratings":63,"last_updated":64,"tested_up_to":45,"requires_at_least":65,"requires_php":66,"tags":67,"homepage":69,"download_link":70,"security_score":71,"vuln_count":27,"unpatched_count":13,"last_vuln_date":72,"fetched_at":24},"preferred-languages","Preferred Languages","2.4.1","\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,17,"2025-11-28T15:06:00.000Z","6.6","7.2.24",[18,19,68,49,51],"language","https:\u002F\u002Fgithub.com\u002Fswissspidy\u002Fpreferred-languages\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpreferred-languages.2.4.1.zip",99,"2024-05-30 00:00:00",{"slug":74,"name":75,"version":76,"author":77,"author_profile":78,"description":79,"short_description":80,"active_installs":81,"downloaded":82,"rating":54,"num_ratings":83,"last_updated":84,"tested_up_to":45,"requires_at_least":85,"requires_php":86,"tags":87,"homepage":89,"download_link":90,"security_score":54,"vuln_count":13,"unpatched_count":13,"last_vuln_date":23,"fetched_at":24},"translation-stats","Translation Stats","1.3.2","Pedro Mendonça","https:\u002F\u002Fprofiles.wordpress.org\u002Fpedromendonca\u002F","\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","4.9","7.4",[18,19,88,49,51],"l10n","https:\u002F\u002Ftranslationstats.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftranslation-stats.1.3.2.zip",{"slug":92,"name":93,"version":94,"author":95,"author_profile":96,"description":97,"short_description":98,"active_installs":99,"downloaded":100,"rating":13,"num_ratings":13,"last_updated":101,"tested_up_to":102,"requires_at_least":103,"requires_php":16,"tags":104,"homepage":106,"download_link":107,"security_score":22,"vuln_count":13,"unpatched_count":13,"last_vuln_date":23,"fetched_at":24},"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.",10,2837,"2017-02-23T04:34:00.000Z","4.7.32","3.8",[18,19,49,51,105],"translator","http:\u002F\u002Fwww.joybin.cn\u002Fwordpress-plugins\u002Ftranslator-with-baidu-service.html","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftranslator-with-baidu-service.zip",{"slug":109,"name":110,"version":111,"author":112,"author_profile":113,"description":114,"short_description":115,"active_installs":99,"downloaded":116,"rating":13,"num_ratings":13,"last_updated":117,"tested_up_to":118,"requires_at_least":119,"requires_php":16,"tags":120,"homepage":123,"download_link":124,"security_score":22,"vuln_count":13,"unpatched_count":13,"last_vuln_date":23,"fetched_at":24},"yd-setup-locale","YD Setup Locale","0.1.0","Yann at WP&Co","https:\u002F\u002Fprofiles.wordpress.org\u002Fydubois\u002F","\u003Cp>This very simple WordPress plugin automatically sets up the WP language environment based on the first part of the url of any page.\u003C\u002Fp>\n\u003Cp>It will automatically setup the right XML header lang attribute + the internal WordPress $locale variable that is used to load the right language files for i18n and l10n (.po, .mo).\u003C\u002Fp>\n\u003Ch4>Usage:\u003C\u002Fh4>\n\u003Cp>Your blog URL structure should always begin with an official two-letter langage code, for example:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u002Fen\u002F… for english\u003C\u002Fli>\n\u003Cli>\u002Fes\u002F… for Spanish\u003C\u002Fli>\n\u003Cli>\u002Fja\u002F… for Japanese\u003C\u002Fli>\n\u003Cli>\u002Ffr\u002F… for French\u003C\u002Fli>\n\u003Cli>etc.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Please use only lower-case codes.\u003C\u002Fp>\n\u003Cp>Pages that don’t comply to this URL scheme will still get your blog’s default locale setting, as configured in your wp-config.php file.\u003C\u002Fp>\n\u003Cp>Sometimes you need to rename or copy some of your po\u002Fmo files, for example French language PO files are usually named like this: \u003Ccode>fr_FR.po\u003C\u002Fcode>;\u003Cbr \u002F>\njust copy it to \u003Ccode>fr.po\u003C\u002Fcode> to make it work with a two-letter code.\u003C\u002Fp>\n\u003Ch4>Example\u003C\u002Fh4>\n\u003Cp>This plugin is used for extended multi-language support on the \u003Ca href=\"http:\u002F\u002Fpost2peer.com\u002Fabout\" title=\"Post2Peer posts and sites directory\" rel=\"nofollow ugc\">Post2Peer.com open posts directory\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Français\u003C\u002Fh4>\n\u003Cp>Ce plugin permet très simplement de faire fonctionner un blog multilingue ou bilingue, français\u002Fanglais par exemple.\u003C\u002Fp>\n\u003Ch4>Active support\u003C\u002Fh4>\n\u003Cp>Drop me a line on my \u003Ca href=\"http:\u002F\u002Fwww.yann.com\u002Fwp-plugins\u002Fyd-setup-locale\" title=\"Yann Dubois' Setup Locale for WordPress\" rel=\"nofollow ugc\">YD Setup Locale plugin support site\u003C\u002Fa> to report bugs, ask for specific feature or improvement, or just tell me how you’re using the plugin.\u003C\u002Fp>\n\u003Ch3>Revisions\u003C\u002Fh3>\n\u003Cp>0.1.0 Initial beta release\u003C\u002Fp>\n\u003Ch3>Did you like it?\u003C\u002Fh3>\n\u003Cp>Drop me a line on http:\u002F\u002Fwww.yann.com\u002Fwp-plugins\u002Fyd-setup-locale\u003C\u002Fp>\n","Automatically sets up the WP language environment based on first part of url. Will setup XML lang attribute + $locale variable.",2815,"2009-06-05T22:13:00.000Z","2.7.1","2.0.0",[18,121,19,88,122],"international","multilingual","http:\u002F\u002Fwww.yann.com\u002Fwp-plugins\u002Fyd-setup-locale","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fyd-setup-locale.zip",{"attackSurface":126,"codeSignals":142,"taintFlows":189,"riskAssessment":216,"analyzedAt":232},{"hooks":127,"ajaxHandlers":138,"restRoutes":139,"shortcodes":140,"cronEvents":141,"entryPointCount":13,"unprotectedCount":13},[128,134],{"type":129,"name":130,"callback":131,"file":132,"line":133},"action","admin_menu","transliterado_aldoni_menuon","transliterado.php",176,{"type":129,"name":135,"callback":136,"priority":13,"file":132,"line":137},"sanitize_title","sanitize_title_transliterado",177,[],[],[],[],{"dangerousFunctions":143,"sqlUsage":144,"outputEscaping":157,"fileOperations":13,"externalRequests":13,"nonceChecks":13,"capabilityChecks":13,"bundledLibraries":188},[],{"prepared":13,"raw":145,"locations":146},4,[147,150,153,155],{"file":132,"line":148,"context":149},91,"$wpdb->get_results() with variable interpolation",{"file":132,"line":151,"context":152},96,"$wpdb->query() with variable interpolation",{"file":132,"line":154,"context":149},114,{"file":132,"line":156,"context":152},119,{"escaped":158,"rawEcho":159,"locations":160},2,13,[161,164,166,168,170,172,174,176,178,180,182,184,186],{"file":132,"line":162,"context":163},77,"raw output",{"file":132,"line":165,"context":163},89,{"file":132,"line":167,"context":163},111,{"file":132,"line":169,"context":163},123,{"file":132,"line":171,"context":163},132,{"file":132,"line":173,"context":163},135,{"file":132,"line":175,"context":163},143,{"file":132,"line":177,"context":163},147,{"file":132,"line":179,"context":163},154,{"file":132,"line":181,"context":163},156,{"file":132,"line":183,"context":163},160,{"file":132,"line":185,"context":163},162,{"file":132,"line":187,"context":163},166,[],[190,208],{"entryPoint":191,"graph":192,"unsanitizedCount":27,"severity":207},"transliterado_options_page (transliterado.php:72)",{"nodes":193,"edges":204},[194,199],{"id":195,"type":196,"label":197,"file":132,"line":198},"n0","source","$_POST[?]",82,{"id":200,"type":201,"label":202,"file":132,"line":198,"wp_function":203},"n1","sink","update_option() [Settings Manipulation]","update_option",[205],{"from":195,"to":200,"sanitized":206},false,"low",{"entryPoint":209,"graph":210,"unsanitizedCount":27,"severity":207},"\u003Ctransliterado> (transliterado.php:0)",{"nodes":211,"edges":214},[212,213],{"id":195,"type":196,"label":197,"file":132,"line":198},{"id":200,"type":201,"label":202,"file":132,"line":198,"wp_function":203},[215],{"from":195,"to":200,"sanitized":206},{"summary":217,"deductions":218},"The static analysis of the transliterado plugin v0.8 reveals a generally good security posture with no identified attack surface in terms of AJAX handlers, REST API routes, shortcodes, or cron events.  The absence of dangerous functions and external HTTP requests is also a positive sign. However, significant concerns arise from the SQL query handling, where 100% of queries are not using prepared statements, increasing the risk of SQL injection vulnerabilities.  Furthermore, the output escaping is severely lacking, with only 13% of outputs properly escaped, leaving the plugin susceptible to cross-site scripting (XSS) attacks. The taint analysis also shows a concerning two flows with unsanitized paths, indicating potential for improper handling of user-supplied data.  The plugin's vulnerability history is clean, with no known CVEs, which is a strong indicator of past good security practices. Despite the clean history, the code-level issues identified in the static analysis are critical and require immediate attention to prevent potential security breaches. The lack of nonce and capability checks, while not explicitly penalized by the provided deduction scale for the given entry points, further contributes to a less robust security implementation.",[219,221,224,227,230],{"reason":220,"points":99},"SQL queries not using prepared statements",{"reason":222,"points":223},"Low percentage of properly escaped output",8,{"reason":225,"points":226},"Flows with unsanitized paths",15,{"reason":228,"points":229},"No nonce checks",5,{"reason":231,"points":229},"No capability checks","2026-03-16T19:52:11.440Z",{"wat":234,"direct":239},{"assetPaths":235,"generatorPatterns":236,"scriptPaths":237,"versionParams":238},[],[],[],[],{"cssClasses":240,"htmlComments":242,"htmlAttributes":243,"restEndpoints":244,"jsGlobals":245,"shortcodeOutput":246},[241],"mceStatusbar",[],[],[],[],[]]