[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$ffChU0VTPLYG4ke_0_x8dZgvv0sThNsDsLqs117eRf6Y":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":22,"download_link":23,"security_score":24,"vuln_count":25,"unpatched_count":25,"last_vuln_date":26,"fetched_at":27,"vulnerabilities":28,"developer":29,"crawl_stats":26,"alternatives":37,"analysis":108,"fingerprints":151},"gp-project-contributors","GP Project Contributors","1.1","Greg Ross","https:\u002F\u002Fprofiles.wordpress.org\u002Fgregross\u002F","\u003Cp>A plugin for \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FGlotPress\u002FGlotPress-WP\" rel=\"nofollow ugc\">GlotPress as a WordPress plugin\u003C\u002Fa> that creates a formatted list of contributors to a GlotPress project as a shortcode.\u003C\u002Fp>\n\u003Cp>There are two shortcodes available:\u003Cbr \u002F>\n* gp-project-contributors – creates a table of contributors per locale.\u003Cbr \u002F>\n* gp-project-contributors-translators – creates a table of contributors and string counts per locale.\u003C\u002Fp>\n\u003Cp>Each short code can take one of three options:\u003Cbr \u002F>\n* name – the name of the project to generate stats for.\u003Cbr \u002F>\n* slug – the slug of the project to generate stats for.\u003Cbr \u002F>\n* id = the id of the project to generate stats for.\u003C\u002Fp>\n\u003Cp>At least one of these must be provided.\u003C\u002Fp>\n\u003Cp>For example, if you have a project with a slug of ‘glotpress’, then the following short code would be used:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[gp-project-contributors slug=glotpress]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>1.1\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Release date: March 31, 2024\u003C\u002Fli>\n\u003Cli>Added gp-project-contributors-translators shortcode, thanks \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fitssimple\" rel=\"nofollow ugc\">Chris Gårdenberg\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>1.0\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Release date: March 18, 2016\u003C\u002Fli>\n\u003Cli>Documentation updates and official release.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>0.5\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Release date: December 31, 2015\u003C\u002Fli>\n\u003Cli>Initial release.\u003C\u002Fli>\n\u003C\u002Ful>\n","A plugin for GlotPress as a WordPress plugin that creates a formatted list of contributors to a GlotPress project as a shortcode.",10,1889,100,1,"2024-03-31T23:01:00.000Z","6.4.8","4.4","",[20,21],"glotpress","translation","http:\u002F\u002Fglot-o-matic.com\u002Fgp-project-contributors","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgp-project-contributors.1.1.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":30,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":32,"avg_security_score":33,"avg_patch_time_days":34,"trust_score":35,"computed_at":36},"gregross",34,7510,88,39,80,"2026-04-04T07:05:17.285Z",[38,60,75,86,97],{"slug":39,"name":40,"version":41,"author":42,"author_profile":43,"description":44,"short_description":45,"active_installs":46,"downloaded":47,"rating":48,"num_ratings":49,"last_updated":50,"tested_up_to":51,"requires_at_least":52,"requires_php":18,"tags":53,"homepage":58,"download_link":59,"security_score":24,"vuln_count":25,"unpatched_count":25,"last_vuln_date":26,"fetched_at":27},"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,54,55,56,57],"locale","localization","switch","translations","https:\u002F\u002Fgithub.com\u002Fstas\u002Flocalize","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flocalize.0.4.zip",{"slug":61,"name":62,"version":63,"author":64,"author_profile":65,"description":66,"short_description":67,"active_installs":13,"downloaded":68,"rating":25,"num_ratings":25,"last_updated":69,"tested_up_to":70,"requires_at_least":71,"requires_php":18,"tags":72,"homepage":73,"download_link":74,"security_score":24,"vuln_count":25,"unpatched_count":25,"last_vuln_date":26,"fetched_at":27},"wp-translation","WP Translation Status","0.1","Pascal Casier","https:\u002F\u002Fprofiles.wordpress.org\u002Fcasiepa\u002F","\u003Cp>Let admins have a direct way to the translation of a plugin with an action link on the plugins page.\u003C\u002Fp>\n\u003Cp>Current features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>It verifies the local site language and points you to the plugins central translation on GlotPress.\u003C\u002Fli>\n\u003C\u002Ful>\n","Make a link to GlotPress centralised translation so contributor can help translating the plugin that do not have yet a translation in the local site l &hellip;",843,"2016-09-05T07:58:00.000Z","4.6.30","4.0",[20,21],"http:\u002F\u002Fcasier.eu\u002Fwp-dev","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-translation.zip",{"slug":76,"name":77,"version":78,"author":7,"author_profile":8,"description":79,"short_description":80,"active_installs":35,"downloaded":81,"rating":25,"num_ratings":25,"last_updated":82,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":83,"homepage":84,"download_link":85,"security_score":24,"vuln_count":25,"unpatched_count":25,"last_vuln_date":26,"fetched_at":27},"gp-removed-powered-by","GP Remove Powered By","1.0","\u003Cp>A plugin for \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FGlotPress\u002FGlotPress-WP\" rel=\"nofollow ugc\">GlotPress as a WordPress plugin\u003C\u002Fa> that removes the “Powered By” in the footer.\u003C\u002Fp>\n","A plugin for GlotPress as a WordPress plugin that removes the \"Powered By\" in the footer.",6393,"2023-12-03T02:50:00.000Z",[20,21],"http:\u002F\u002Fglot-o-matic.com\u002Fgp-remove-powered-by","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgp-removed-powered-by.1.0.zip",{"slug":87,"name":88,"version":78,"author":7,"author_profile":8,"description":89,"short_description":90,"active_installs":91,"downloaded":92,"rating":13,"num_ratings":14,"last_updated":93,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":94,"homepage":95,"download_link":96,"security_score":24,"vuln_count":25,"unpatched_count":25,"last_vuln_date":26,"fetched_at":27},"gp-additional-links","GP Additional Links","\u003Cp>A plugin for \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FGlotPress\u002FGlotPress-WP\" rel=\"nofollow ugc\">GlotPress as a WordPress plugin\u003C\u002Fa> that adds a link to the WordPress dashboard for admins in the GlotPress page as well as a link to the GlotPress page in the WordPress admin menu.\u003C\u002Fp>\n","A plugin for GlotPress as a WordPress plugin that adds a link to the WordPress dashboard for admins in the GlotPress page as well as a link to the Glo &hellip;",20,2044,"2023-12-03T02:47:00.000Z",[20,21],"http:\u002F\u002Fglot-o-matic.com\u002Fgp-additional-links","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgp-additional-links.1.0.zip",{"slug":98,"name":99,"version":100,"author":7,"author_profile":8,"description":101,"short_description":102,"active_installs":91,"downloaded":103,"rating":13,"num_ratings":14,"last_updated":104,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":105,"homepage":106,"download_link":107,"security_score":24,"vuln_count":25,"unpatched_count":25,"last_vuln_date":26,"fetched_at":27},"gp-download-name","GP Download Name","0.6","\u003Cp>A plugin for \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fglotpress\" rel=\"ugc\">GlotPress\u003C\u002Fa> that uses a customizable template for the download file name.\u003C\u002Fp>\n\u003Cp>Simply install, activate and configure via the WordPress settings menu.\u003C\u002Fp>\n\u003Cp>Note: this plugin requires GlotPress 2.3 or above.\u003C\u002Fp>\n","A plugin for GlotPress that uses a customizable template for the download file name.",1869,"2023-12-03T02:48:00.000Z",[20,21],"http:\u002F\u002Fglot-o-matic.com\u002Fgp-download-name","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgp-download-name.0.6.zip",{"attackSurface":109,"codeSignals":128,"taintFlows":140,"riskAssessment":141,"analyzedAt":150},{"hooks":110,"ajaxHandlers":117,"restRoutes":118,"shortcodes":119,"cronEvents":127,"entryPointCount":49,"unprotectedCount":25},[111],{"type":112,"name":113,"callback":114,"file":115,"line":116},"action","gp_init","gp_project_contributors_init","gp-project-contributors.php",243,[],[],[120,123],{"tag":4,"callback":121,"file":115,"line":122},"gp_project_contributors",17,{"tag":124,"callback":125,"file":115,"line":126},"gp-project-contributors-translators","gp_project_contributors_translators",18,[],{"dangerousFunctions":129,"sqlUsage":130,"outputEscaping":137,"fileOperations":25,"externalRequests":25,"nonceChecks":25,"capabilityChecks":25,"bundledLibraries":139},[],{"prepared":25,"raw":49,"locations":131},[132,135],{"file":115,"line":133,"context":134},54,"$wpdb->get_results() with variable interpolation",{"file":115,"line":136,"context":134},152,{"escaped":25,"rawEcho":25,"locations":138},[],[],[],{"summary":142,"deductions":143},"The plugin \"gp-project-contributors\" v1.1 exhibits a generally strong security posture based on the provided static analysis. The absence of dangerous functions, file operations, and external HTTP requests is commendable. Furthermore, all identified output is properly escaped, and there are no recorded vulnerabilities, which suggests a history of secure development.\n\nHowever, there are notable areas of concern that detract from an otherwise positive assessment. The presence of two SQL queries that do not utilize prepared statements presents a significant risk of SQL injection vulnerabilities. The complete lack of nonce checks and capability checks across all entry points, particularly the two shortcodes, is another critical weakness. This indicates that any user, regardless of their logged-in status or permissions, can potentially trigger the functionality associated with these shortcodes, opening the door to unauthorized actions or data manipulation.\n\nWhile the plugin has no known vulnerabilities, the identified coding practices such as raw SQL queries and missing permission checks introduce inherent risks that could be exploited if malicious input is provided. The low number of entry points is a positive factor, but it does not mitigate the severity of the identified security flaws. Developers should prioritize addressing the SQL injection risks and implementing proper nonce and capability checks to enhance the plugin's overall security.",[144,146,148],{"reason":145,"points":11},"Raw SQL queries without prepared statements",{"reason":147,"points":11},"Missing nonce checks on entry points",{"reason":149,"points":11},"Missing capability checks on entry points","2026-03-17T00:10:50.846Z",{"wat":152,"direct":157},{"assetPaths":153,"generatorPatterns":154,"scriptPaths":155,"versionParams":156},[],[],[],[],{"cssClasses":158,"htmlComments":161,"htmlAttributes":162,"restEndpoints":163,"jsGlobals":164,"shortcodeOutput":166},[159,160],"gptl-twitter","gptl-facebook",[],[],[],[165],"GP",[167,168,169],"\u003Ctable style=\"border: 0px;\">","\u003Ctd style=\"text-align: right; border: 0px; background: transparent; white-space: nowrap;\">","\u003Ctd style=\"border: 0px; background: transparent; padding-left:5px;\">"]