[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fPiQe0Pe1jhhYEBLpfOaSZVqLBV5BH7M1FJHHl2IY_EY":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":13,"vuln_count":27,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30,"vulnerabilities":31,"developer":73,"crawl_stats":37,"alternatives":80,"analysis":173,"fingerprints":680},"dashboard-widgets-suite","Dashboard Widgets Suite","3.5","Jeff Starr","https:\u002F\u002Fprofiles.wordpress.org\u002Fspecialk\u002F","\u003Cp>1 Plugin. 9 Widgets. Awesome Dashboard.\u003C\u002Fp>\n\u003Cp>\u003Cem>Add new widgets to your WordPress Dashboard. Streamline your workflow and optimize productivity.\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Widgets\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Dashboard Widgets Suite provides awesome widgets that you can add to your Dashboard with a click:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Control Panel\u003C\u002Fstrong> – Control widgets directly from the Dashboard\u003C\u002Fli>\n\u003Cli>\u003Cstrong>User Notes\u003C\u002Fstrong>    – Add, edit, delete notes for any user role\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Feed Box\u003C\u002Fstrong>      – Display and customize any RSS Feed\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Social Box\u003C\u002Fstrong>    – Display social links from Twitter, Facebook, etc.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>List Box\u003C\u002Fstrong>      – Display custom lists created via the Menu screen\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Widget Box\u003C\u002Fstrong>    – Display any theme or WP widget (e.g., Search, Text)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>System Info\u003C\u002Fstrong>   – Display basic or advanced system information\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Debug Log\u003C\u002Fstrong>     – Display, customize, reset your WP debug log\u003C\u002Fli>\n\u003Cli>\u003Cstrong>PHP Error Log\u003C\u002Fstrong> – Display, customize, reset your server error log\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Each widget includes its own set of options for customizing display 🙂\u003C\u002Fp>\n\u003Cp>The notes widget is super awesome, designed for serious note takers. You can choose from 3 note formats: Text, HTML, or Code. Check out \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fdashboard-widgets-suite\u002F#installation\" rel=\"ugc\">Installation\u003C\u002Fa> for more about the User Notes Widget.\u003C\u002Fp>\n\u003Cp>\u003Cem>\u003Ca href=\"https:\u002F\u002Fplugin-planet.com\u002Fsupport\u002F#contact\" rel=\"nofollow ugc\">Suggest a widget!\u003C\u002Fa>\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Dashboard Widgets Suite provides a slick set of useful Dashboard widgets with some great features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Includes 9 awesome Dashboard widgets\u003C\u002Fli>\n\u003Cli>Easy to set up and customize options\u003C\u002Fli>\n\u003Cli>Regularly updated and “future proof”\u003C\u002Fli>\n\u003Cli>Secure, clean, error-free code\u003C\u002Fli>\n\u003Cli>Built with the WordPress API\u003C\u002Fli>\n\u003Cli>Lightweight, fast and flexible\u003C\u002Fli>\n\u003Cli>Focused on performance, loads only enabled widgets\u003C\u002Fli>\n\u003Cli>Enable\u002Fdisable widgets via Dashboard or plugin settings\u003C\u002Fli>\n\u003Cli>Option to restore 1-column display for the Dashboard\u003C\u002Fli>\n\u003Cli>Shortcodes to display widgets on the frontend\u003C\u002Fli>\n\u003Cli>Many options for customizing widget display\u003C\u002Fli>\n\u003Cli>Works perfectly with or without Gutenberg\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fdashboard-widgets-suite\u002Fscreenshots\u002F\" rel=\"ugc\">Check out the Screenshots\u003C\u002Fa> for more details!\u003C\u002Fp>\n\u003Cp>\u003Cem>\u003Ca href=\"https:\u002F\u002Fplugin-planet.com\u002Fsupport\u002F#contact\" rel=\"nofollow ugc\">Suggest a feature!\u003C\u002Fa>\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Privacy\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>This plugin does not collect or store any user data. It does not set any cookies, and it does not connect to any third-party locations. Thus, this plugin does not affect user privacy in any way.\u003C\u002Fp>\n\u003Cp>Dashboard Widgets Suite is developed and maintained by \u003Ca href=\"https:\u002F\u002Fx.com\u002Fperishable\" rel=\"nofollow ugc\">Jeff Starr\u003C\u002Fa>, 15-year \u003Ca href=\"https:\u002F\u002Fplugin-planet.com\u002F\" rel=\"nofollow ugc\">WordPress developer\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fbooks.perishablepress.com\u002F\" rel=\"nofollow ugc\">book author\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Support development\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>I develop and maintain this free plugin with love for the WordPress community. To show support, you can \u003Ca href=\"https:\u002F\u002Fmonzillamedia.com\u002Fdonate.html\" rel=\"nofollow ugc\">make a donation\u003C\u002Fa> or purchase one of my books:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwp-tao.com\u002F\" rel=\"nofollow ugc\">The Tao of WordPress\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fdigwp.com\u002F\" rel=\"nofollow ugc\">Digging into WordPress\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fhtaccessbook.com\u002F\" rel=\"nofollow ugc\">.htaccess made easy\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwp-tao.com\u002Fwordpress-themes-book\u002F\" rel=\"nofollow ugc\">WordPress Themes In Depth\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fbooks.perishablepress.com\u002Fdownloads\u002Fwizards-collection-sql-recipes-wordpress\u002F\" rel=\"nofollow ugc\">Wizard’s SQL Recipes for WordPress\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>And\u002For purchase one of my premium WordPress plugins:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fplugin-planet.com\u002Fbbq-pro\u002F\" rel=\"nofollow ugc\">BBQ Pro\u003C\u002Fa> – Blazing fast WordPress firewall\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fplugin-planet.com\u002Fblackhole-pro\u002F\" rel=\"nofollow ugc\">Blackhole Pro\u003C\u002Fa> – Automatically block bad bots\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fplugin-planet.com\u002Fbanhammer-pro\u002F\" rel=\"nofollow ugc\">Banhammer Pro\u003C\u002Fa> – Monitor traffic and ban the bad guys\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fplugin-planet.com\u002Fga-google-analytics-pro\u002F\" rel=\"nofollow ugc\">GA Google Analytics Pro\u003C\u002Fa> – Connect WordPress to Google Analytics\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fplugin-planet.com\u002Fhead-meta-pro\u002F\" rel=\"nofollow ugc\">Head Meta Pro\u003C\u002Fa> – Ultimate Meta Tags for WordPress\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fplugin-planet.com\u002Fsimple-ajax-chat-pro\u002F\" rel=\"nofollow ugc\">Simple Ajax Chat Pro\u003C\u002Fa> – Unlimited chat rooms\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fplugin-planet.com\u002Fusp-pro\u002F\" rel=\"nofollow ugc\">USP Pro\u003C\u002Fa> – Unlimited front-end forms\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Links, tweets and likes also appreciated. Thank you! 🙂\u003C\u002Fp>\n","Adds 9 awesome widgets to your WP Dashboard. Includes User Notes, Social Buttons, System Info, Debug\u002FError Logs, and more!",4000,152523,98,36,"2026-01-28T20:06:00.000Z","6.9.4","4.7","5.6.20",[20,21,22,23,24],"dashboard","debug","log","notes","widget","https:\u002F\u002Fperishablepress.com\u002Fdashboard-widgets-suite\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdashboard-widgets-suite.3.5.zip",3,0,"2024-06-12 19:49:38","2026-03-15T15:16:48.613Z",[32,48,62],{"id":33,"url_slug":34,"title":35,"description":36,"plugin_slug":4,"theme_slug":37,"affected_versions":38,"patched_in_version":39,"severity":40,"cvss_score":41,"cvss_vector":42,"vuln_type":43,"published_date":29,"updated_date":44,"references":45,"days_to_patch":47},"CVE-2024-0979","dashboard-widgets-suite-reflected-cross-site-scripting","Dashboard Widgets Suite \u003C= 3.4.3 - Reflected Cross-Site Scripting","The Dashboard Widgets Suite plugin for WordPress is vulnerable to Reflected Cross-Site Scripting via the 'tab' parameter in all versions up to, and including, 3.4.3 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that execute if they can successfully trick a user into performing an action such as clicking on a link.",null,"\u003C=3.4.3","3.4.4","medium",6.1,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:R\u002FS:C\u002FC:L\u002FI:L\u002FA:N","Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","2024-06-13 08:31:33",[46],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fcfe4d99c-9cbd-4255-8f90-f904313d46b4?source=api-prod",1,{"id":49,"url_slug":50,"title":51,"description":52,"plugin_slug":4,"theme_slug":37,"affected_versions":53,"patched_in_version":54,"severity":40,"cvss_score":55,"cvss_vector":56,"vuln_type":43,"published_date":57,"updated_date":58,"references":59,"days_to_patch":61},"CVE-2023-49743","dashboard-widgets-suite-authenticated-administrator-stored-cross-site-scripting-2","Dashboard Widgets Suite \u003C= 3.4.1 - Authenticated (Administrator+) Stored Cross-Site Scripting","The Dashboard Widgets Suite plugin for WordPress is vulnerable to Stored Cross-Site Scripting via admin settings in all versions up to, and including, 3.4.1 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.","\u003C=3.4.1","3.4.2",4.4,"CVSS:3.1\u002FAV:N\u002FAC:H\u002FPR:H\u002FUI:N\u002FS:C\u002FC:L\u002FI:L\u002FA:N","2023-12-04 00:00:00","2024-01-22 19:56:02",[60],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fcba77ced-412e-4461-8d2a-980371c78a17?source=api-prod",50,{"id":63,"url_slug":64,"title":65,"description":66,"plugin_slug":4,"theme_slug":37,"affected_versions":67,"patched_in_version":68,"severity":40,"cvss_score":55,"cvss_vector":56,"vuln_type":43,"published_date":69,"updated_date":58,"references":70,"days_to_patch":72},"CVE-2023-26517","dashboard-widgets-suite-authenticated-administrator-stored-cross-site-scripting","Dashboard Widgets Suite \u003C= 3.2.1 - Authenticated (Administrator+) Stored Cross-Site Scripting","The Dashboard Widgets Suite plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 3.2.1 via widget_notes_message due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers with administrator-level access, and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.","\u003C=3.2.1","3.2.2","2023-02-27 00:00:00",[71],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F503a44ed-25c2-4178-aeec-756c5b533e04?source=api-prod",330,{"slug":74,"display_name":7,"profile_url":8,"plugin_count":75,"total_installs":76,"avg_security_score":13,"avg_patch_time_days":77,"trust_score":78,"computed_at":79},"specialk",30,1241610,345,78,"2026-04-03T18:07:22.370Z",[81,104,124,141,156],{"slug":82,"name":83,"version":84,"author":85,"author_profile":86,"description":87,"short_description":88,"active_installs":89,"downloaded":90,"rating":91,"num_ratings":92,"last_updated":93,"tested_up_to":94,"requires_at_least":95,"requires_php":96,"tags":97,"homepage":102,"download_link":103,"security_score":91,"vuln_count":28,"unpatched_count":28,"last_vuln_date":37,"fetched_at":30},"simple-log-viewer","Simple Log Viewer","1.0.4","Pedro Avelar","https:\u002F\u002Fprofiles.wordpress.org\u002Fpedroasa\u002F","\u003Cp>A simple plugin to log errors in real time in a metabox in the admin panel, too integrated with WP-CLI.\u003C\u002Fp>\n\u003Cp>For the run command with WP-CLI is necessary to activate the plugin and install WP-CLI.\u003C\u002Fp>\n\u003Cp>When running, paste the command \u003Ccode>wp slvpl logs-erros\u003C\u002Fcode> into the terminal, by default the number of lines is 1000 but you can control the number of lines through the \u003Ccode>--num_linhas\u003C\u002Fcode> parameter\u003C\u002Fp>\n\u003Cp>\u003Cstrong>For the example\u003C\u002Fstrong>:  \u003Ccode>wp slvpl logs-erros [--num_linhas=\u003Cnum_linhas>]\u003C\u002Fcode> or\u003Cbr \u002F>\nbetter in the example \u003Ccode>wp slvpl logs-erros --num_linhas=100\u003C\u002Fcode>.\u003C\u002Fp>\n","A simple plugin to log errors in real time in a metabox in the admin panel, too integrated with WP-CLI",10,1857,100,2,"2025-05-26T01:49:00.000Z","6.6.5","5.4","7.4",[98,21,99,100,101],"dashboard-widget","error-reporting","erros","logs","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsimple-log-viewer.1.0.4.zip",{"slug":105,"name":106,"version":107,"author":108,"author_profile":109,"description":110,"short_description":111,"active_installs":112,"downloaded":113,"rating":114,"num_ratings":115,"last_updated":116,"tested_up_to":117,"requires_at_least":118,"requires_php":102,"tags":119,"homepage":120,"download_link":121,"security_score":122,"vuln_count":47,"unpatched_count":47,"last_vuln_date":123,"fetched_at":30},"dashboard-notepad","Dashboard Notepad","1.42","Stephanie Leary","https:\u002F\u002Fprofiles.wordpress.org\u002Fsillybean\u002F","\u003Cp>This dashboard widget provides a simple notepad. The widget settings allow you to choose which roles can edit the notes, and which roles can merely read them. Version 1.30 also adds support for custom roles and integrates with the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fmembers\u002F\" rel=\"ugc\">Members plugin\u003C\u002Fa> for role settings.\u003C\u002Fp>\n\u003Cp>You can display the contents of your notepad using a template tag and\u002For shortcode. The widget permissions apply to these tags as well: only users with permission to read the notes will see the notes on the front end. You can use \u003Ccode>div#dashboard-notes\u003C\u002Fcode> in your theme’s CSS file to style the notes.\u003C\u002Fp>\n\u003Ch4>Translations\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Belorussian (be_BY) by \u003Ca href=\"http:\u002F\u002Ffatcow.com\" rel=\"nofollow ugc\">FatCow\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Bulgarian (bg_BG) by \u003Ca href=\"http:\u002F\u002Fwww.siteground.com\u002F\" rel=\"nofollow ugc\">SiteGround\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Dutch (nl_NL) by Axel Vanderhaeghen\u003C\u002Fli>\n\u003Cli>German (de_DE) by Guido Kerkewitz\u003C\u002Fli>\n\u003Cli>Italian (it_IT) translation by Francesco Bevivino\u003C\u002Fli>\n\u003Cli>Romanian (ro_RO) by Web Hosting Geeks (\u003Ca href=\"http:\u002F\u002Fwebhostinggeeks.com\u002F\" rel=\"nofollow ugc\">Web\u003Cbr \u002F>\nGeek Sciense\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Swedish (se_SV) by \u003Ca href=\"http:\u002F\u002Fwww.rabatt.se\" rel=\"nofollow ugc\">Rabatt\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Ukranian (uk_UA) by \u003Ca href=\"http:\u002F\u002Fgetvoip.com\u002Fblog\" rel=\"nofollow ugc\">Michael Yunat\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Translations\u003C\u002Fh3>\n\u003Cp>If you would like to send me a translation, please write to me through \u003Ca href=\"http:\u002F\u002Fsillybean.net\u002Fabout\u002Fcontact\u002F\" rel=\"nofollow ugc\">my contact page\u003C\u002Fa>. Let me know which plugin you’ve translated and how you would like to be credited. I will write you back so you can attach the files in your reply.\u003C\u002Fp>\n","The very simplest of notepads for your Dashboard.",10000,92629,92,12,"2017-11-28T13:39:00.000Z","4.1.42","2.8",[20,23,24],"http:\u002F\u002Fsillybean.net\u002Fcode\u002Fwordpress\u002Fdashboard-notepad\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdashboard-notepad.1.42.zip",63,"2025-09-22 00:00:00",{"slug":125,"name":126,"version":127,"author":128,"author_profile":129,"description":130,"short_description":131,"active_installs":91,"downloaded":132,"rating":91,"num_ratings":47,"last_updated":133,"tested_up_to":16,"requires_at_least":134,"requires_php":135,"tags":136,"homepage":139,"download_link":140,"security_score":91,"vuln_count":28,"unpatched_count":28,"last_vuln_date":37,"fetched_at":30},"admin-users-logged-in","Admin Users Logged In","1.0.6","Marcel Pol","https:\u002F\u002Fprofiles.wordpress.org\u002Fmpol\u002F","\u003Cp>Dashboard widget that shows admin users and when they were last logged in.\u003C\u002Fp>\n\u003Ch4>Compatibility\u003C\u002Fh4>\n\u003Cp>This plugin is compatible with \u003Ca href=\"https:\u002F\u002Fwww.classicpress.net\" rel=\"nofollow ugc\">ClassicPress\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Contributions\u003C\u002Fh4>\n\u003Cp>This plugin is also available in\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fcodeberg.org\u002Fcyclotouriste\u002Fadmin-users-logged-in\" rel=\"nofollow ugc\">Codeberg\u003C\u002Fa>.\u003C\u002Fp>\n","Dashboard widget that shows admin users and when they were last logged in.",3834,"2026-01-10T09:18:00.000Z","4.4","7.0",[137,98,138],"admin-users","last-login","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fadmin-users-logged-in\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fadmin-users-logged-in.1.0.6.zip",{"slug":142,"name":143,"version":144,"author":145,"author_profile":146,"description":147,"short_description":148,"active_installs":89,"downloaded":149,"rating":91,"num_ratings":47,"last_updated":150,"tested_up_to":16,"requires_at_least":151,"requires_php":96,"tags":152,"homepage":102,"download_link":155,"security_score":91,"vuln_count":28,"unpatched_count":28,"last_vuln_date":37,"fetched_at":30},"js-error-logger","JS Error Logger","1.3.1","JFG Media","https:\u002F\u002Fprofiles.wordpress.org\u002Fjfgmedia\u002F","\u003Cp>The plugin catches most JS errors, logs them, and displays them in a dashboard widget.\u003C\u002Fp>\n\u003Cp>Here are some of its features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\nExcept for the plugin settings, there is no database storage involved. Log is written in a “.log” file.\n\u003C\u002Fli>\n\u003Cli>\nDisplay latest JS errors in a dashboard widget.\n\u003C\u002Fli>\n\u003Cli>\nRefresh errors from the dashboard widget.\n\u003C\u002Fli>\n\u003Cli>\nSee the full error log on a separate page.\n\u003C\u002Fli>\n\u003Cli>\nIgnore errors if the user agent contains a specific string.\n\u003C\u002Fli>\n\u003Cli>\nIgnore errors if the error contains a specific string.\n\u003C\u002Fli>\n\u003Cli>\nIgnore errors if the script url contains a specific string.\n\u003C\u002Fli>\n\u003Cli>\nSee which page and which script triggered the errors.\n\u003C\u002Fli>\n\u003Cli>\nChoose the maximum amount of errors to log per page load.\n\u003C\u002Fli>\n\u003Cli>\nExclude logging errors from specific post types.\n\u003C\u002Fli>\n\u003Cli>\nChoose how ajax calls are made.\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Developer hooks and filters\u003C\u002Fh4>\n\u003Cp>The plugin cleans the log every 24 hours, to only keep the last 100 entries.\u003Cbr \u002F>\nYou may use the “jserrlog_max_log_entries” WP filter to enable more or less entries, by returning an integer: \u003Ccode>add_filter('jserrlog_max_log_entries',function(){return 200;})\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Alter error data:\u003Cbr \u002F>\nYou may use the “jserrlog_pre_insert_error” WP filter to modify the error data before it’s inserted into the log file: \u003Ccode>add_filter('jserrlog_pre_insert_error',function($error_data){return $error_data;})\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Trigger integrations:\u003Cbr \u002F>\nYou may use the “jserrlog_after_log” WP hook to trigger an action (Slack notification, etc.) after an error was logged: \u003Ccode>add_action('jserrlog_after_log',function($error_data){\u002F\u002Fdo something})\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Backup old errors:\u003Cbr \u002F>\nYou may use the “jserrlog_before_log_maintenance” WP hook to trigger an action (archive errors, etc.) before old errors are deleted: \u003Ccode>add_action('jserrlog_before_log_maintenance',function($errors){\u002F\u002Fdo something})\u003C\u002Fcode>\u003C\u002Fp>\n\u003Ch4>Multisite\u003C\u002Fh4>\n\u003Cp>The plugin works with multisite. There’s one error log per site.\u003C\u002Fp>\n","Logs front-end javascript errors, and displays them in a dashboard widget",1446,"2025-12-11T05:34:00.000Z","5.0",[98,21,99,153,154],"javascript","js","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fjs-error-logger.1.3.1.zip",{"slug":157,"name":158,"version":159,"author":160,"author_profile":161,"description":162,"short_description":163,"active_installs":28,"downloaded":164,"rating":28,"num_ratings":28,"last_updated":165,"tested_up_to":166,"requires_at_least":167,"requires_php":168,"tags":169,"homepage":102,"download_link":172,"security_score":114,"vuln_count":28,"unpatched_count":28,"last_vuln_date":37,"fetched_at":30},"dashboard-scratch-pad","Dashboard Scratch Pad","1.0.0","Andrew Mead","https:\u002F\u002Fprofiles.wordpress.org\u002Fandrewmead\u002F","\u003Cp>A plugin that adds a scratch pad to your dashboard\u003C\u002Fp>\n","A plugin that adds a scratch pad to your dashboard",763,"2024-06-25T14:54:00.000Z","6.5.8","5.5","7.3.29",[170,23,171],"dashboard-widgets","widgets","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdashboard-scratch-pad.1.0.0.zip",{"attackSurface":174,"codeSignals":277,"taintFlows":589,"riskAssessment":667,"analyzedAt":679},{"hooks":175,"ajaxHandlers":261,"restRoutes":262,"shortcodes":263,"cronEvents":276,"entryPointCount":27,"unprotectedCount":28},[176,182,185,189,194,198,202,206,209,213,217,221,225,228,231,234,237,240,243,246,249,253,256],{"type":177,"name":178,"callback":179,"file":180,"line":181},"action","admin_init","check_suite","dashboard-widgets.php",55,{"type":177,"name":178,"callback":183,"file":180,"line":184},"check_version",56,{"type":177,"name":186,"callback":187,"file":180,"line":188},"init","load_i18n",57,{"type":190,"name":191,"callback":192,"priority":89,"file":180,"line":193},"filter","plugin_action_links","action_links",58,{"type":190,"name":195,"callback":196,"priority":89,"file":180,"line":197},"plugin_row_meta","plugin_links",59,{"type":190,"name":199,"callback":200,"priority":89,"file":180,"line":201},"admin_footer_text","footer_text",60,{"type":190,"name":203,"callback":204,"file":180,"line":205},"get_user_option_screen_layout_dashboard","dashboard_widgets_suite_dashboard_columns",62,{"type":190,"name":207,"callback":208,"file":180,"line":122},"screen_layout_columns","dashboard_widgets_suite_dashboard_columns_max",{"type":177,"name":210,"callback":211,"file":180,"line":212},"admin_head-index.php","dashboard_widgets_suite_dashboard_columns_style",64,{"type":177,"name":214,"callback":215,"file":180,"line":216},"admin_enqueue_scripts","dashboard_widgets_suite_enqueue_resources_admin",66,{"type":177,"name":218,"callback":219,"file":180,"line":220},"admin_notices","dashboard_widgets_suite_admin_notice",67,{"type":177,"name":222,"callback":223,"file":180,"line":224},"admin_menu","dashboard_widgets_suite_menu_pages",68,{"type":177,"name":178,"callback":226,"file":180,"line":227},"dashboard_widgets_suite_control_panel_submit",70,{"type":177,"name":178,"callback":229,"file":180,"line":230},"dashboard_widgets_suite_register_settings",71,{"type":177,"name":178,"callback":232,"file":180,"line":233},"dashboard_widgets_suite_register_list_box",72,{"type":177,"name":178,"callback":235,"file":180,"line":236},"dashboard_widgets_suite_reset_options",73,{"type":177,"name":178,"callback":238,"file":180,"line":239},"dashboard_widgets_suite_delete_notes",74,{"type":177,"name":178,"callback":241,"file":180,"line":242},"dashboard_widgets_suite_dismiss_notice_save",75,{"type":177,"name":178,"callback":244,"file":180,"line":245},"dashboard_widgets_suite_dismiss_notice_version",76,{"type":177,"name":247,"callback":248,"file":180,"line":78},"wp_enqueue_scripts","dashboard_widgets_suite_enqueue_resources_frontend",{"type":177,"name":250,"callback":251,"file":180,"line":252},"widgets_init","dashboard_widgets_suite_register_widget_box",79,{"type":177,"name":186,"callback":254,"file":180,"line":255},"dashboard_widgets_suite_notes_user_submit",80,{"type":177,"name":257,"callback":258,"file":259,"line":260},"wp_dashboard_setup","dashboard_widgets_suite_enable_widgets","inc\\widgets-enable.php",207,[],[],[264,268,272],{"tag":265,"callback":266,"file":180,"line":267},"dws_feed_box","dashboard_widgets_suite_feed_box_frontend",82,{"tag":269,"callback":270,"file":180,"line":271},"dws_social_box","dashboard_widgets_suite_social_box_frontend",83,{"tag":273,"callback":274,"file":180,"line":275},"dws_user_notes","dashboard_widgets_suite_user_notes_frontend",84,[],{"dangerousFunctions":278,"sqlUsage":279,"outputEscaping":281,"fileOperations":587,"externalRequests":47,"nonceChecks":287,"capabilityChecks":365,"bundledLibraries":588},[],{"prepared":92,"raw":28,"locations":280},[],{"escaped":282,"rawEcho":283,"locations":284},111,159,[285,289,291,293,295,297,299,301,303,305,307,309,311,313,314,316,317,319,321,323,325,327,329,331,333,335,337,339,341,343,345,347,348,350,351,353,356,359,360,361,362,363,366,368,369,370,371,373,375,377,379,381,383,384,386,388,390,392,394,396,398,400,402,405,407,408,410,411,412,413,414,416,418,420,422,424,426,428,429,431,433,435,437,439,441,443,445,446,448,449,451,452,454,455,457,459,461,463,465,467,469,471,473,475,477,479,481,483,485,487,489,491,493,495,497,499,501,503,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,545,547,549,551,553,555,557,559,561,563,565,567,569,571,573,575,577,579,581,583,585],{"file":286,"line":287,"context":288},"inc\\settings-callbacks.php",7,"raw output",{"file":286,"line":290,"context":288},13,{"file":286,"line":292,"context":288},14,{"file":286,"line":294,"context":288},20,{"file":286,"line":296,"context":288},26,{"file":286,"line":298,"context":288},32,{"file":286,"line":300,"context":288},33,{"file":286,"line":302,"context":288},34,{"file":286,"line":304,"context":288},35,{"file":286,"line":306,"context":288},41,{"file":286,"line":308,"context":288},42,{"file":286,"line":310,"context":288},48,{"file":286,"line":312,"context":288},49,{"file":286,"line":181,"context":288},{"file":286,"line":315,"context":288},61,{"file":286,"line":122,"context":288},{"file":286,"line":318,"context":288},69,{"file":286,"line":320,"context":288},188,{"file":286,"line":322,"context":288},191,{"file":286,"line":324,"context":288},193,{"file":286,"line":326,"context":288},224,{"file":286,"line":328,"context":288},225,{"file":286,"line":330,"context":288},246,{"file":286,"line":332,"context":288},247,{"file":286,"line":334,"context":288},266,{"file":286,"line":336,"context":288},267,{"file":286,"line":338,"context":288},289,{"file":286,"line":340,"context":288},290,{"file":286,"line":342,"context":288},300,{"file":286,"line":344,"context":288},310,{"file":286,"line":346,"context":288},320,{"file":286,"line":72,"context":288},{"file":349,"line":216,"context":288},"inc\\settings-display.php",{"file":349,"line":245,"context":288},{"file":349,"line":352,"context":288},199,{"file":354,"line":355,"context":288},"inc\\settings-reset.php",53,{"file":357,"line":358,"context":288},"widgets\\widget-control-panel.php",39,{"file":357,"line":197,"context":288},{"file":357,"line":197,"context":288},{"file":357,"line":201,"context":288},{"file":357,"line":201,"context":288},{"file":364,"line":365,"context":288},"widgets\\widget-feed-box.php",9,{"file":367,"line":220,"context":288},"widgets\\widget-log-debug.php",{"file":367,"line":236,"context":288},{"file":367,"line":242,"context":288},{"file":367,"line":252,"context":288},{"file":367,"line":372,"context":288},95,{"file":367,"line":374,"context":288},99,{"file":367,"line":376,"context":288},120,{"file":367,"line":378,"context":288},124,{"file":367,"line":380,"context":288},132,{"file":382,"line":318,"context":288},"widgets\\widget-log-error.php",{"file":382,"line":242,"context":288},{"file":382,"line":385,"context":288},77,{"file":382,"line":387,"context":288},81,{"file":382,"line":389,"context":288},97,{"file":382,"line":391,"context":288},101,{"file":382,"line":393,"context":288},122,{"file":382,"line":395,"context":288},126,{"file":382,"line":397,"context":288},134,{"file":399,"line":287,"context":288},"widgets\\widget-notes-user.php",{"file":401,"line":365,"context":288},"widgets\\widget-social-box.php",{"file":403,"line":404,"context":288},"widgets\\widget-system-info.php",28,{"file":403,"line":406,"context":288},29,{"file":403,"line":75,"context":288},{"file":403,"line":409,"context":288},31,{"file":403,"line":298,"context":288},{"file":403,"line":300,"context":288},{"file":403,"line":302,"context":288},{"file":403,"line":275,"context":288},{"file":403,"line":415,"context":288},85,{"file":403,"line":417,"context":288},86,{"file":403,"line":419,"context":288},87,{"file":403,"line":421,"context":288},88,{"file":403,"line":423,"context":288},89,{"file":403,"line":425,"context":288},90,{"file":403,"line":427,"context":288},91,{"file":403,"line":282,"context":288},{"file":403,"line":430,"context":288},112,{"file":403,"line":432,"context":288},113,{"file":403,"line":434,"context":288},114,{"file":403,"line":436,"context":288},115,{"file":403,"line":438,"context":288},116,{"file":403,"line":440,"context":288},117,{"file":403,"line":442,"context":288},118,{"file":403,"line":444,"context":288},119,{"file":403,"line":376,"context":288},{"file":403,"line":447,"context":288},121,{"file":403,"line":393,"context":288},{"file":403,"line":450,"context":288},123,{"file":403,"line":378,"context":288},{"file":403,"line":453,"context":288},125,{"file":403,"line":395,"context":288},{"file":403,"line":456,"context":288},127,{"file":403,"line":458,"context":288},128,{"file":403,"line":460,"context":288},129,{"file":403,"line":462,"context":288},313,{"file":403,"line":464,"context":288},314,{"file":403,"line":466,"context":288},315,{"file":403,"line":468,"context":288},316,{"file":403,"line":470,"context":288},317,{"file":403,"line":472,"context":288},318,{"file":403,"line":474,"context":288},460,{"file":403,"line":476,"context":288},461,{"file":403,"line":478,"context":288},462,{"file":403,"line":480,"context":288},463,{"file":403,"line":482,"context":288},464,{"file":403,"line":484,"context":288},465,{"file":403,"line":486,"context":288},466,{"file":403,"line":488,"context":288},467,{"file":403,"line":490,"context":288},468,{"file":403,"line":492,"context":288},469,{"file":403,"line":494,"context":288},470,{"file":403,"line":496,"context":288},471,{"file":403,"line":498,"context":288},472,{"file":403,"line":500,"context":288},473,{"file":403,"line":502,"context":288},474,{"file":403,"line":504,"context":288},642,{"file":403,"line":506,"context":288},643,{"file":403,"line":508,"context":288},644,{"file":403,"line":510,"context":288},645,{"file":403,"line":512,"context":288},646,{"file":403,"line":514,"context":288},647,{"file":403,"line":516,"context":288},786,{"file":403,"line":518,"context":288},787,{"file":403,"line":520,"context":288},788,{"file":403,"line":522,"context":288},789,{"file":403,"line":524,"context":288},790,{"file":403,"line":526,"context":288},791,{"file":403,"line":528,"context":288},792,{"file":403,"line":530,"context":288},793,{"file":403,"line":532,"context":288},794,{"file":403,"line":534,"context":288},795,{"file":403,"line":536,"context":288},796,{"file":403,"line":538,"context":288},797,{"file":403,"line":540,"context":288},798,{"file":403,"line":542,"context":288},799,{"file":403,"line":544,"context":288},800,{"file":403,"line":546,"context":288},801,{"file":403,"line":548,"context":288},802,{"file":403,"line":550,"context":288},803,{"file":403,"line":552,"context":288},804,{"file":403,"line":554,"context":288},805,{"file":403,"line":556,"context":288},806,{"file":403,"line":558,"context":288},807,{"file":403,"line":560,"context":288},808,{"file":403,"line":562,"context":288},809,{"file":403,"line":564,"context":288},810,{"file":403,"line":566,"context":288},1011,{"file":403,"line":568,"context":288},1012,{"file":403,"line":570,"context":288},1013,{"file":403,"line":572,"context":288},1014,{"file":403,"line":574,"context":288},1015,{"file":403,"line":576,"context":288},1016,{"file":403,"line":578,"context":288},1017,{"file":403,"line":580,"context":288},1018,{"file":403,"line":582,"context":288},1019,{"file":403,"line":584,"context":288},1020,{"file":403,"line":586,"context":288},1021,4,[],[590,606,619,633,642,650,659],{"entryPoint":591,"graph":592,"unsanitizedCount":47,"severity":40},"dashboard_widgets_suite_admin_notice (inc\\settings-reset.php:5)",{"nodes":593,"edges":603},[594,598],{"id":595,"type":596,"label":597,"file":354,"line":306},"n0","source","$_GET",{"id":599,"type":600,"label":601,"file":354,"line":355,"wp_function":602},"n1","sink","echo() [XSS]","echo",[604],{"from":595,"to":599,"sanitized":605},false,{"entryPoint":607,"graph":608,"unsanitizedCount":28,"severity":618},"dashboard_widgets_suite_dismiss_notice_save (inc\\settings-reset.php:97)",{"nodes":609,"edges":615},[610,612],{"id":595,"type":596,"label":597,"file":354,"line":611},109,{"id":599,"type":600,"label":613,"file":354,"line":432,"wp_function":614},"wp_redirect() [Open Redirect]","wp_redirect",[616],{"from":595,"to":599,"sanitized":617},true,"low",{"entryPoint":620,"graph":621,"unsanitizedCount":28,"severity":618},"\u003Csettings-reset> (inc\\settings-reset.php:0)",{"nodes":622,"edges":630},[623,624,625,628],{"id":595,"type":596,"label":597,"file":354,"line":306},{"id":599,"type":600,"label":601,"file":354,"line":355,"wp_function":602},{"id":626,"type":596,"label":627,"file":354,"line":611},"n2","$_GET (x3)",{"id":629,"type":600,"label":613,"file":354,"line":432,"wp_function":614},"n3",[631,632],{"from":595,"to":599,"sanitized":617},{"from":626,"to":629,"sanitized":617},{"entryPoint":634,"graph":635,"unsanitizedCount":28,"severity":618},"dashboard_widgets_suite_log_debug (widgets\\widget-log-debug.php:5)",{"nodes":636,"edges":640},[637,639],{"id":595,"type":596,"label":597,"file":367,"line":638},25,{"id":599,"type":600,"label":601,"file":367,"line":242,"wp_function":602},[641],{"from":595,"to":599,"sanitized":617},{"entryPoint":643,"graph":644,"unsanitizedCount":28,"severity":618},"\u003Cwidget-log-debug> (widgets\\widget-log-debug.php:0)",{"nodes":645,"edges":648},[646,647],{"id":595,"type":596,"label":597,"file":367,"line":638},{"id":599,"type":600,"label":601,"file":367,"line":242,"wp_function":602},[649],{"from":595,"to":599,"sanitized":617},{"entryPoint":651,"graph":652,"unsanitizedCount":28,"severity":618},"dashboard_widgets_suite_log_error (widgets\\widget-log-error.php:5)",{"nodes":653,"edges":657},[654,656],{"id":595,"type":596,"label":597,"file":382,"line":655},27,{"id":599,"type":600,"label":601,"file":382,"line":385,"wp_function":602},[658],{"from":595,"to":599,"sanitized":617},{"entryPoint":660,"graph":661,"unsanitizedCount":28,"severity":618},"\u003Cwidget-log-error> (widgets\\widget-log-error.php:0)",{"nodes":662,"edges":665},[663,664],{"id":595,"type":596,"label":597,"file":382,"line":655},{"id":599,"type":600,"label":601,"file":382,"line":385,"wp_function":602},[666],{"from":595,"to":599,"sanitized":617},{"summary":668,"deductions":669},"The \"dashboard-widgets-suite\" v3.5 plugin exhibits a mixed security posture. On the positive side, there are no reported unpatched CVEs, and the static analysis indicates a strong adherence to secure coding practices regarding SQL queries, which are all prepared. The plugin also implements a reasonable number of nonce and capability checks, suggesting an awareness of common WordPress security vulnerabilities. The absence of critical or high-severity taint flows is also reassuring.\n\nHowever, a significant concern arises from the output escaping. With only 41% of outputs properly escaped, there's a substantial risk of Cross-Site Scripting (XSS) vulnerabilities, especially given the plugin's history of three medium-severity XSS CVEs. While the last known vulnerability was recently patched, this pattern indicates a recurring weakness in sanitizing user-supplied data before it's displayed. The presence of unsanitized paths in taint analysis, although not classified as critical or high, warrants attention as it could be a vector for other types of injection attacks.\n\nIn conclusion, while the plugin has a good track record of addressing vulnerabilities and employs secure practices for database interactions, the persistent issue with output escaping is a notable weakness. The historical prevalence of XSS vulnerabilities, even if currently patched, suggests that developers should prioritize rigorous output sanitization to mitigate future risks and improve the overall security posture.",[670,673,676],{"reason":671,"points":672},"Significant portion of outputs not properly escaped",8,{"reason":674,"points":675},"Taint analysis found unsanitized paths",5,{"reason":677,"points":678},"History of medium severity XSS vulnerabilities",6,"2026-03-16T18:10:50.642Z",{"wat":681,"direct":692},{"assetPaths":682,"generatorPatterns":686,"scriptPaths":687,"versionParams":688},[683,684,685],"\u002Fwp-content\u002Fplugins\u002Fdashboard-widgets-suite\u002Fcss\u002Fdws-admin.css","\u002Fwp-content\u002Fplugins\u002Fdashboard-widgets-suite\u002Fcss\u002Fdws-frontend.css","\u002Fwp-content\u002Fplugins\u002Fdashboard-widgets-suite\u002Fjs\u002Fdws-admin.js",[],[685],[689,690,691],"dashboard-widgets-suite\u002Fcss\u002Fdws-admin.css?ver=","dashboard-widgets-suite\u002Fcss\u002Fdws-frontend.css?ver=","dashboard-widgets-suite\u002Fjs\u002Fdws-admin.js?ver=",{"cssClasses":693,"htmlComments":698,"htmlAttributes":701,"restEndpoints":704,"jsGlobals":705,"shortcodeOutput":707},[694,695,696,697],"dws-feed-box","dws-social-box","dws-user-notes","dws-admin-notice",[699,700],"\u003C!-- Dashboard Widgets Suite -->","\u003C!-- END Dashboard Widgets Suite -->",[702,703],"data-dws-widget-id","data-dws-widget-type",[],[706],"dws_admin_params",[708,709,710],"[dws_feed_box]","[dws_social_box]","[dws_user_notes]"]