[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fAcO2hedyyrvAQndGD1JVs6auyR0QES8LjXusK1Hwpq0":3,"$fBlgRxnxx4A3qrZiclmO0jRx91ke1Fqrbop8mMpYIE9I":301},{"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":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":39,"analysis":147,"fingerprints":281},"zeno-report-comments","Zeno Report Comments","2.3.2","Marcel Pol","https:\u002F\u002Fprofiles.wordpress.org\u002Fmpol\u002F","\u003Cp>This plugin gives your visitors the possibility to report a comment as inappropriate. After a set threshold is reached the comment is put into moderation where the moderator can decide whether or not he want to approve the comment or not. If a comment is approved by a moderator it will not be auto-moderated again while still counting the amount of reports.\u003C\u002Fp>\n\u003Cp>This plugin is a fork of safe-report-comments and has some features incorporated from crowd-control (a different fork).\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 \u003Ca href=\"https:\u002F\u002Fcodeberg.org\u002Fcyclotouriste\u002Fzeno-report-comments\" rel=\"nofollow ugc\">Codeberg\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Known issues\u003C\u002Fh3>\n\u003Cp>Automatic mode implementation currently does not work with threaded comments in the last level of threading. As the script attaches itself to the comment_reply which is not displayed once the maximum threading level is reached the abuse link is missing at this point. As a workaround set the threading level higher than the likely amount of threading depth.\u003C\u002Fp>\n","This plugin gives your visitors the possibility to report a comment as inappropriate. After a set threshold the comment is put into moderation.",200,11941,100,8,"2026-01-10T09:34:00.000Z","6.9.4","4.1","7.0",[20,21,22,23,24],"crowd-control","flag-comments","report-comments","safe-report-comments","spam-comment","https:\u002F\u002Fzenoweb.nl","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.3.2.zip",0,null,"2026-04-06T09:54:40.288Z",[],{"slug":32,"display_name":7,"profile_url":8,"plugin_count":33,"total_installs":34,"avg_security_score":35,"avg_patch_time_days":36,"trust_score":37,"computed_at":38},"mpol",19,82250,99,1119,78,"2026-04-07T10:28:08.247Z",[40,64,86,105,126],{"slug":41,"name":42,"version":43,"author":44,"author_profile":45,"description":46,"short_description":47,"active_installs":48,"downloaded":49,"rating":50,"num_ratings":51,"last_updated":52,"tested_up_to":53,"requires_at_least":54,"requires_php":18,"tags":55,"homepage":61,"download_link":62,"security_score":63,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"smart-attachment-page-remove","Smart Attachment Page Remove","4.0.5","Peter Raschendorfer","https:\u002F\u002Fprofiles.wordpress.org\u002Fpetersplugins\u002F","\u003Cp>The Smart Attachment Page Remove Plugin allows you to remove Attachment Pages automatically generated by WordPress\u003C\u002Fp>\n\u003Ch3>Retired Plugin\u003C\u002Fh3>\n\u003Cp>Development, maintenance and support of this plugin has been retired in october 2023. You can use this plugin as long as is works for you.\u003C\u002Fp>\n\u003Cp>There will be no more updates and I won’t answer any support questions. Thanks for your understanding.\u003C\u002Fp>\n\u003Cp>Feel free to fork this plugin.\u003C\u002Fp>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Cp>WordPress automatically generates a page for every file you upload to your Media Library. Even if you do not want to use these Pages and never link media files to their Attachment Page these pages exist and can be accessed by their automated generated URL. The Smart Attachment Page Remove Plugin blocks access to Attachment Pages and causes an 404 error (“page not found”).\u003C\u002Fp>\n\u003Cp>This ensures that Attachment Pages do not appear in the results of Search Engines unwanted.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Additionally this plugin prevents from comment spam\u003C\u002Fstrong> sent via this Attachment Pages because they are no longer accessible.\u003C\u002Fp>\n\u003Ch3>Settings\u003C\u002Fh3>\n\u003Cp>Optionally, a status code 410 can be sent instead of status code 404.\u003C\u002Fp>\n\u003Cp>HTTP status code 404 indicates that the requested URL could not be found. This is the default code always sent by WordPress when a URL can not be found. HTTP status 404 does not provide any further information why a URL was not found.\u003C\u002Fp>\n\u003Cp>HTTP status code 410 on the other hand indicates that the requested URL is no longer available and will not be available again. If your Attachment Pages already have been indexed by search engines, HTTP status 410 informs them to immediately delete those pages from their index. This should speed up removal.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Regardless, in case of Attachment Pages it makes more sense to use HTTP status 410 anyway and it is recommendet to activate this option in any case.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>This option is not activated by default only because it is not the usual behavior of WordPress. There are no negative effects in using HTTP 410.\u003C\u002Fp>\n\u003Ch3>Plugin Privacy Information\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>This plugin does not set cookies\u003C\u002Fli>\n\u003Cli>This plugin does not collect or store any data\u003C\u002Fli>\n\u003Cli>This plugin does not send any data to external servers\u003C\u002Fli>\n\u003C\u002Ful>\n","Completely remove Attachment Pages from your Blog",900,18389,94,13,"2024-04-17T20:17:00.000Z","6.3.8","4.0",[56,57,58,59,60],"antispam-comment-spam","attachment-page","attachment-pages","classicpress","spam","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsmart-attachment-page-remove\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsmart-attachment-page-remove.4.0.5.zip",92,{"slug":65,"name":66,"version":67,"author":68,"author_profile":69,"description":70,"short_description":71,"active_installs":72,"downloaded":73,"rating":13,"num_ratings":74,"last_updated":75,"tested_up_to":76,"requires_at_least":77,"requires_php":18,"tags":78,"homepage":83,"download_link":84,"security_score":85,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"toms-recaptcha","TomS reCAPTCHA","1.2.0","TomS Caprice","https:\u002F\u002Fprofiles.wordpress.org\u002Ftomsneddon\u002F","\u003Cp>Integrated Google ReCaptcha for WordPress. Protect the login, register, lostpassword and comment forms. Support Woocommerce, Ultimate Member and more popular forms.\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fdevelopers.google.com\u002Frecaptcha\" rel=\"nofollow ugc\">\u003Cstrong>Google reCAPTCHA\u003C\u002Fstrong>\u003C\u002Fa> is a free service that protects your site from spam and abuse. It uses advanced risk analysis techniques to tell humans and bots apart.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cp>Go to \u003Ca href=\"https:\u002F\u002Fwww.google.com\u002Frecaptcha\u002Fadmin\u002Fcreate\" rel=\"nofollow ugc\">Google reCAPTCHA\u003C\u002Fa> to get the \u003Cstrong>Site key\u003C\u002Fstrong> and \u003Cstrong>Secret key\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch4>reCAPTCHA Type:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>reCAPTCHA \u003Cstrong>v3\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>reCAPTCHA \u003Cstrong>v2 Checkbox\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>reCAPTCHA \u003Cstrong>v2 Invisible\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Supported Form List\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>WordPress default login form\u003C\u002Fli>\n\u003Cli>WordPress default register form\u003C\u002Fli>\n\u003Cli>WordPress default lostpassword form\u003C\u002Fli>\n\u003Cli>\n\u003Cp>WordPress default comment form\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwoocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Woocommerce\u003C\u002Fstrong>\u003C\u002Fa> login form\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwoocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Woocommerce\u003C\u002Fstrong>\u003C\u002Fa> register form\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwoocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Woocommerce\u003C\u002Fstrong>\u003C\u002Fa> lostpassword form\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwoocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Woocommerce\u003C\u002Fstrong>\u003C\u002Fa> checkout Billing form\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Add a shortcode \u003Cstrong>[toms_woo_register_form]\u003C\u002Fstrong> for \u003Cstrong>woocommerce register form\u003C\u002Fstrong> on any page you want.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fultimate-member\u002F\" rel=\"ugc\">\u003Cstrong>Ultimate Member\u003C\u002Fstrong>\u003C\u002Fa> login form\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fultimate-member\u002F\" rel=\"ugc\">\u003Cstrong>Ultimate Member\u003C\u002Fstrong>\u003C\u002Fa> register form\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fultimate-member\u002F\" rel=\"ugc\">\u003Cstrong>Ultimate Member\u003C\u002Fstrong>\u003C\u002Fa> lostpassword form\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcontact-form-block\u002F\" rel=\"ugc\">\u003Cstrong>Contact Form Block\u003C\u002Fstrong>\u003C\u002Fa> Contact Form Block\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>more support forms comming soon…\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Option settings\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Verify API : \u003Cstrong>Google.com\u003C\u002Fstrong>\u002F\u003Cstrong>Recaptcha.net\u003C\u002Fstrong> \u003Cstrong>—Notice:—\u003C\u002Fstrong> Some country can not use Google verify API, that means Google verify API will not work, even using vpn. If google.com not work try use Recaptcha.net\u003C\u002Fli>\n\u003Cli>reCAPTCHA v2 (Checkbox)  Theme: \u003Cstrong>Light\u003C\u002Fstrong>\u002F\u003Cstrong>Dark\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>reCAPTCHA v2 (Invisible) Badge: \u003Cstrong>Bottom Right\u003C\u002Fstrong>\u002F\u003Cstrong>Bottom Left\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Custom reCAPTCHA Language\u003C\u002Fh4>\n\u003Ch4>Translation ready\u003C\u002Fh4>\n\u003Ch3>Translations\u003C\u002Fh3>\n\u003Cp>Reliance upon any non-English translation is at your own risk; TomS reCAPTCHA can give no guarantees that translations from the original English are accurate.\u003C\u002Fp>\n\u003Cp>We recognise and thank those mentioned at https:\u002F\u002Ftoms-caprice.org\u002Ftranslations for code and\u002For libraries used and\u002For modified under the terms of their open source licences.\u003C\u002Fp>\n","Integrated Google ReCaptcha for WordPress.Protect the login, register, lostpassword and comment forms. Support Woocommerce, Ultimate Member and more p &hellip;",600,16722,1,"2023-03-29T08:59:00.000Z","6.2.9","5.8",[79,80,81,82,65],"block-spam-comments","captcha","nocaptcha","recaptcha","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ftoms-recaptcha","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftoms-recaptcha.1.2.0.zip",85,{"slug":87,"name":88,"version":89,"author":90,"author_profile":91,"description":92,"short_description":93,"active_installs":11,"downloaded":94,"rating":27,"num_ratings":27,"last_updated":95,"tested_up_to":16,"requires_at_least":96,"requires_php":97,"tags":98,"homepage":103,"download_link":104,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"cleantalk-bbpress-spam-scanner","CleanTalk bbPress spam scanner","1.0.3","CleanTalk Inc","https:\u002F\u002Fprofiles.wordpress.org\u002Fcleantalk\u002F","\u003Cp>CleanTalk bbPress spam scanner is an add-on for \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcleantalk-spam-protect\u002F\" rel=\"ugc\">CleanTalk Anti-Spam Plugin\u003C\u002Fa> and extends its capabilities. The plugin is designed to help you find and move to trash all existing bbPress spam topics.\u003C\u002Fp>\n\u003Cp>The plugin scans all bbPress topics and checks the author parameters through the CleanTalk database. After scanning, you will receive a list of all found spam topics and you can choose which of them to move to the trash or move them all at once.\u003C\u002Fp>\n","Check existing bbPress topics for spam and move to trash all found spam.",5430,"2026-01-22T08:47:00.000Z","3.0","7.2",[99,100,60,101,102],"bbpress","cleaner","spam-check","spam-comments","https:\u002F\u002Fcleantalk.org","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcleantalk-bbpress-spam-scanner.1.0.3.zip",{"slug":23,"name":106,"version":107,"author":108,"author_profile":109,"description":110,"short_description":111,"active_installs":11,"downloaded":112,"rating":113,"num_ratings":114,"last_updated":115,"tested_up_to":116,"requires_at_least":117,"requires_php":118,"tags":119,"homepage":124,"download_link":125,"security_score":85,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"Safe Report Comments","0.4.1","Automattic","https:\u002F\u002Fprofiles.wordpress.org\u002Fautomattic\u002F","\u003Cp>This plugin gives your visitors the possibility to report a comment as inappropriate. After a set threshold is reached the comment is put into moderation where the moderator can decide whether or not he want to approve the comment or not. If a comment is approved by a moderator it will not be auto-moderated again while still counting the amount of reports.\u003C\u002Fp>\n\u003Ch3>Customizations\u003C\u002Fh3>\n\u003Cp>By default this script should hook in just fine in most existing themes as it attaches itsself after the comment-reply link via the comment_reply_link filter.\u003Cbr \u002F>\nIn case this does not work out you can place the flagging link manually by defining no_autostart_safe_report_comments in your themes’ functions.php file and initializing the class via \u003Ccode>$safe_report_comments = new Safe_Report_Comments(false);\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Here is an example of a custom setup via functions.php and placing the link comments callback function.\u003C\u002Fp>\n\u003Cp>In functions.php:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002F\u002Fflag comments plugin included in themes' functions.php - disable plugin.\ndefine( 'no_autostart_safe_report_comments', true );\ninclude_once( 'replace-with-path-to\u002Fsafe-report-comments\u002Fsafe-report-comments.php');\n\u002F\u002F make sure not to auto-attach to comment reply link\n$safe_report_comments = new Safe_Report_Comments(false);\n\n\u002F\u002F change link layout to have a pipe prepended\nadd_filter( 'safe_report_comments_flagging_link', 'adjust_flagging_link' );\nfunction adjust_flagging_link( $link ) {\n    return ' | ' . $link;\n}\n\n\u002F\u002F adjust the text to \"Report abuse\" rather than \"Report comment\"\nadd_filter( 'safe_report_comments_flagging_link_text', 'adjust_flagging_text' );\nfunction adjust_flagging_text( $text ) {\n    return 'Report abuse';\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>In your custom comment callback function used by wp_list_comments: https:\u002F\u002Fcodex.wordpress.org\u002FTemplate_Tags\u002Fwp_list_comments place the following action which will print the link.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php do_action( 'comment_report_abuse_link' ); ?> \n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>A possible callback function could look like this:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>function mytheme_comment($comment, $args, $depth) {\n    $GLOBALS['comment'] = $comment; ?>\n    \u003Cli \u003C?php comment_class(); ?> id=\"li-comment-\u003C?php comment_ID() ?>\">\n        \u003Cdiv id=\"comment-\u003C?php comment_ID(); ?>\">\n            \u003Cdiv class=\"comment-author vcard\">\n                \u003C?php echo get_avatar($comment,$size='48',$default='\u003Cpath_to_url>' ); ?>\n                \u003C?php printf(__('\u003Ccite class=\"fn\">%s\u003C\u002Fcite> \u003Cspan class=\"says\">says:\u003C\u002Fspan>'), get_comment_author_link()) ?>\n            \u003C\u002Fdiv>\n            \u003C?php if ($comment->comment_approved == '0') : ?>\n            \u003Cem>\u003C?php _e('Your comment is awaiting moderation.') ?>\u003C\u002Fem>\n            \u003Cbr \u002F>\n        \u003C?php endif; ?>\n        \u003Cdiv class=\"comment-meta commentmetadata\">\u003Ca href=\"\u003C?php echo htmlspecialchars( get_comment_link( $comment->comment_ID ) ) ?>\">\u003C?php printf(__('%1$s at %2$s'), get_comment_date(),  get_comment_time()) ?>\u003C\u002Fa>\u003C?php edit_comment_link(__('(Edit)'),'    ','') ?>\u003C\u002Fdiv>\n\n        \u003C?php comment_text() ?>\n\n        \u003Cdiv class=\"reply\">\n            \u003C?php comment_reply_link(array_merge( $args, array('depth' => $depth, 'max_depth' => $args['max_depth']))) ?>\n        \u003C\u002Fdiv>\n        \u003Cdiv class=\"report-abuse\">\n            \u003C?php do_action( 'comment_report_abuse_link' ); ?>\n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \u003C?php\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Furthermore there are various actions and filters within the script to allow easy alteration of implemented behavior. Please see inline documentation.\u003C\u002Fp>\n\u003Ch3>Known issues\u003C\u002Fh3>\n\u003Cp>Automatic mode implementation currently does not work with threaded comments in the last level of threading. As the script attaches itself to the comment_reply which is not displayed once the maximum threading level is reached the abuse link is missing at this point. As a workaround set the threading level higher than the likely amount of threading depth.\u003C\u002Fp>\n","This plugin gives your visitors the possibility to report a comment as inappropriate. After a set threshold is reached the comment is put into moderat &hellip;",27461,60,7,"2018-11-30T07:00:00.000Z","5.0.25","3.3","",[120,121,122,123,22],"comments","flag","flagging","report","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fsafe-report-comments\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsafe-report-comments.0.4.1.zip",{"slug":127,"name":128,"version":129,"author":130,"author_profile":131,"description":132,"short_description":133,"active_installs":11,"downloaded":134,"rating":135,"num_ratings":136,"last_updated":137,"tested_up_to":138,"requires_at_least":96,"requires_php":118,"tags":139,"homepage":145,"download_link":146,"security_score":85,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"wp-database-cleaner","WP Database Cleaner","1.0","wpmize","https:\u002F\u002Fprofiles.wordpress.org\u002Fwpmize\u002F","\u003Cp>WP Database Cleaner is a easy to use WordPress plugin that allow users to quickly cleanup and optimize the WordPress database by removing all spam comments, trash comments, unused tags, post revisions, auto drafts, and much more.\u003C\u002Fp>\n\u003Cp>When you have a WordPress site that has a lot of visitors, and presumibly a lot of comments, you may find that a high number of comments will be placed in the spam folder. It is not good to have 10k spam comments saved in the database, because all of these comments can increase consistently the size of the mysql database backups.\u003C\u002Fp>\n\u003Cp>If you have a lot of published posts, you may have post revisions and auto-drafts saved in the database, that can slow down the database performances. All this data is considered junk and it should be cleaned frequently.\u003C\u002Fp>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Delete post revisions\u003C\u002Fli>\n\u003Cli>Delete auto drafts\u003C\u002Fli>\n\u003Cli>Delete pending comments\u003C\u002Fli>\n\u003Cli>Delete spam comments\u003C\u002Fli>\n\u003Cli>Delete trash comments\u003C\u002Fli>\n\u003Cli>Delete tags with 0 posts associated\u003C\u002Fli>\n\u003Cli>Delete categories with 0 posts associated\u003C\u002Fli>\n\u003Cli>Delete trash posts\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>More Information\u003C\u002Fh4>\n\u003Cp>For more details visit \u003Ca href=\"http:\u002F\u002Fwww.wpmize.com\u002Fwordpress-plugins\u002Foptimize-wordpress-database-wp-database-cleaner\u002F\" rel=\"nofollow ugc\">the official plugin URL\u003C\u002Fa>.\u003Cbr \u002F>\nFor more plugins and WordPress tips visit us at \u003Ca href=\"http:\u002F\u002Fwww.wpmize.com\u002F\" rel=\"nofollow ugc\">wpmize.com\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Author\u003C\u002Fh3>\n\u003Cp>WPMize.com\u003Cbr \u002F>\nhttp:\u002F\u002Fwww.wpmize.com\u003C\u002Fp>\n","Cleanup and optimize the database of WordPress sites.",24248,96,6,"2012-08-27T12:32:00.000Z","3.4.2",[140,141,142,143,144],"cleanup-database","database","optimize","optimize-database","remove-spam-comments","http:\u002F\u002Fwww.wpmize.com\u002Fwordpress-plugins\u002Foptimize-wordpress-database-wp-database-cleaner\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-database-cleaner.zip",{"attackSurface":148,"codeSignals":243,"taintFlows":259,"riskAssessment":277,"analyzedAt":280},{"hooks":149,"ajaxHandlers":228,"restRoutes":239,"shortcodes":240,"cronEvents":241,"entryPointCount":242,"unprotectedCount":27},[150,155,158,161,167,170,175,179,183,187,191,196,200,204,207,211,215,220,224],{"type":151,"name":152,"callback":153,"file":154,"line":33},"action","admin_init","zeno_report_comments_backend_init","admin-hooks.php",{"type":151,"name":152,"callback":156,"file":154,"line":157},"zeno_report_comments_add_privacy_policy_content",41,{"type":151,"name":152,"callback":159,"file":154,"line":160},"zeno_report_comments_settings_fields",65,{"type":162,"name":163,"callback":164,"priority":165,"file":154,"line":166},"filter","manage_edit-comments_columns","zeno_report_comments_add_comment_reported_column",90,160,{"type":162,"name":168,"callback":164,"priority":165,"file":154,"line":169},"manage_edit-comments_sortable_columns",161,{"type":151,"name":171,"callback":172,"priority":173,"file":154,"line":174},"manage_comments_custom_column","zeno_report_comments_manage_comment_reported_column",10,207,{"type":162,"name":163,"callback":176,"priority":177,"file":154,"line":178},"zeno_report_comments_add_comment_responses_column",91,220,{"type":151,"name":171,"callback":180,"priority":181,"file":154,"line":182},"zeno_report_comments_manage_comment_responses_column",11,260,{"type":151,"name":184,"callback":185,"file":154,"line":186},"admin_enqueue_scripts","zeno_report_comments_admin_enqueue_scripts",283,{"type":151,"name":188,"callback":189,"priority":173,"file":154,"line":190},"comment_unapproved_to_approved","zeno_report_comments_comment_unapproved_to_approved",345,{"type":151,"name":192,"callback":193,"file":194,"line":195},"init","zeno_report_comments_frontend_init","frontend-hooks.php",20,{"type":151,"name":197,"callback":198,"file":194,"line":199},"zeno_report_comments_mark_flagged","zeno_report_comments_admin_notification",61,{"type":151,"name":201,"callback":202,"file":194,"line":203},"zeno_report_comments_add_report","zeno_report_comments_admin_notification_each",102,{"type":151,"name":205,"callback":206,"file":194,"line":169},"wp_enqueue_scripts","zeno_report_comments_action_enqueue_scripts",{"type":151,"name":208,"callback":209,"file":194,"line":210},"comment_report_abuse_link","zeno_report_comments_print_flagging_link",285,{"type":162,"name":212,"callback":213,"priority":173,"file":194,"line":214},"comment_reply_link","zeno_report_comments_add_flagging_link_to_reply_link",452,{"type":162,"name":216,"callback":217,"priority":218,"file":194,"line":219},"comment_text","zeno_report_comments_add_flagging_link_to_content",80,495,{"type":151,"name":192,"callback":221,"file":222,"line":223},"zeno_report_comments_load_language","general-functions.php",17,{"type":151,"name":225,"callback":226,"file":222,"line":227},"template_redirect","zeno_report_comments_add_test_cookie",227,[229,234,237],{"action":230,"nopriv":231,"callback":230,"hasNonce":232,"hasCapCheck":232,"file":154,"line":233},"zeno_report_comments_moderate_comment",false,true,319,{"action":235,"nopriv":231,"callback":235,"hasNonce":232,"hasCapCheck":231,"file":194,"line":236},"zeno_report_comments_flag_comment",208,{"action":235,"nopriv":232,"callback":235,"hasNonce":232,"hasCapCheck":231,"file":194,"line":238},209,[],[],[],3,{"dangerousFunctions":244,"sqlUsage":245,"outputEscaping":247,"fileOperations":27,"externalRequests":27,"nonceChecks":257,"capabilityChecks":74,"bundledLibraries":258},[],{"prepared":27,"raw":27,"locations":246},[],{"escaped":248,"rawEcho":242,"locations":249},44,[250,253,255],{"file":154,"line":251,"context":252},188,"raw output",{"file":154,"line":254,"context":252},248,{"file":194,"line":256,"context":252},282,2,[],[260],{"entryPoint":261,"graph":262,"unsanitizedCount":27,"severity":276},"\u003Cfrontend-hooks> (frontend-hooks.php:0)",{"nodes":263,"edges":274},[264,269],{"id":265,"type":266,"label":267,"file":194,"line":268},"n0","source","$_POST",186,{"id":270,"type":271,"label":272,"file":194,"line":256,"wp_function":273},"n1","sink","echo() [XSS]","echo",[275],{"from":265,"to":270,"sanitized":232},"low",{"summary":278,"deductions":279},"The zeno-report-comments plugin, version 2.3.2, exhibits a strong security posture based on the provided static analysis. The absence of dangerous functions, reliance on prepared statements for all SQL queries, and a high percentage of properly escaped output are significant strengths. The plugin also demonstrates good security practices by implementing nonce and capability checks on its entry points. The lack of file operations and external HTTP requests further reduces its attack surface. The taint analysis shows no critical or high severity flows, indicating a low risk of sensitive data being mishandled.\n\nWhile the plugin's code quality appears to be high with no known vulnerabilities in its history, the primary area for potential concern lies in the interpretation of the 'Unprotected' entry points. The report states 3 AJAX handlers with 0 unprotected. This is a very positive sign, suggesting all entry points are properly secured. However, any component that can be triggered by an unauthenticated user, even if it contains internal authorization checks, can still present a minor risk if those checks are flawed or if the entry point itself becomes a target for denial-of-service attacks. Nevertheless, based on the provided data, the overall risk associated with this plugin is very low. The absence of historical vulnerabilities further reinforces this assessment, suggesting consistent security diligence by the developers.",[],"2026-03-16T20:21:23.347Z",{"wat":282,"direct":289},{"assetPaths":283,"generatorPatterns":284,"scriptPaths":285,"versionParams":286},[],[],[],[287,288],"zeno-report-comments\u002Fstyle.css?ver=","zeno-report-comments\u002Fscript.js?ver=",{"cssClasses":290,"htmlComments":291,"htmlAttributes":292,"restEndpoints":298,"jsGlobals":299,"shortcodeOutput":300},[],[],[293,294,295,296,297],"zrcmnt_threshold","zrcmnt_admin_notification","zrcmnt_admin_notification_each","zrcmnt_spamcheck","zrcmnt_ipblock_from_reporting",[],[],[],{"slug":4,"current_version":6,"total_versions":302,"versions":303},14,[304,309,316,323,330,337,344,351,358,365,372,379,386,393],{"version":6,"download_url":26,"svn_tag_url":305,"released_at":28,"has_diff":231,"diff_files_changed":306,"diff_lines":28,"trac_diff_url":307,"vulnerabilities":308,"is_current":232},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.3.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.3.1&new_path=%2Fzeno-report-comments%2Ftags%2F2.3.2",[],{"version":310,"download_url":311,"svn_tag_url":312,"released_at":28,"has_diff":231,"diff_files_changed":313,"diff_lines":28,"trac_diff_url":314,"vulnerabilities":315,"is_current":231},"2.3.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.3.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.3.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.3.0&new_path=%2Fzeno-report-comments%2Ftags%2F2.3.1",[],{"version":317,"download_url":318,"svn_tag_url":319,"released_at":28,"has_diff":231,"diff_files_changed":320,"diff_lines":28,"trac_diff_url":321,"vulnerabilities":322,"is_current":231},"2.3.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.3.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.3.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.2.0&new_path=%2Fzeno-report-comments%2Ftags%2F2.3.0",[],{"version":324,"download_url":325,"svn_tag_url":326,"released_at":28,"has_diff":231,"diff_files_changed":327,"diff_lines":28,"trac_diff_url":328,"vulnerabilities":329,"is_current":231},"2.2.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.2.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.2.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.1.4&new_path=%2Fzeno-report-comments%2Ftags%2F2.2.0",[],{"version":331,"download_url":332,"svn_tag_url":333,"released_at":28,"has_diff":231,"diff_files_changed":334,"diff_lines":28,"trac_diff_url":335,"vulnerabilities":336,"is_current":231},"2.1.4","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.1.4.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.1.4\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.1.3&new_path=%2Fzeno-report-comments%2Ftags%2F2.1.4",[],{"version":338,"download_url":339,"svn_tag_url":340,"released_at":28,"has_diff":231,"diff_files_changed":341,"diff_lines":28,"trac_diff_url":342,"vulnerabilities":343,"is_current":231},"2.1.3","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.1.3.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.1.3\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.1.2&new_path=%2Fzeno-report-comments%2Ftags%2F2.1.3",[],{"version":345,"download_url":346,"svn_tag_url":347,"released_at":28,"has_diff":231,"diff_files_changed":348,"diff_lines":28,"trac_diff_url":349,"vulnerabilities":350,"is_current":231},"2.1.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.1.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.1.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.1.1&new_path=%2Fzeno-report-comments%2Ftags%2F2.1.2",[],{"version":352,"download_url":353,"svn_tag_url":354,"released_at":28,"has_diff":231,"diff_files_changed":355,"diff_lines":28,"trac_diff_url":356,"vulnerabilities":357,"is_current":231},"2.1.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.1.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.1.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.1.0&new_path=%2Fzeno-report-comments%2Ftags%2F2.1.1",[],{"version":359,"download_url":360,"svn_tag_url":361,"released_at":28,"has_diff":231,"diff_files_changed":362,"diff_lines":28,"trac_diff_url":363,"vulnerabilities":364,"is_current":231},"2.1.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.1.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.1.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.0.4&new_path=%2Fzeno-report-comments%2Ftags%2F2.1.0",[],{"version":366,"download_url":367,"svn_tag_url":368,"released_at":28,"has_diff":231,"diff_files_changed":369,"diff_lines":28,"trac_diff_url":370,"vulnerabilities":371,"is_current":231},"2.0.4","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.0.4.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.0.4\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.0.3&new_path=%2Fzeno-report-comments%2Ftags%2F2.0.4",[],{"version":373,"download_url":374,"svn_tag_url":375,"released_at":28,"has_diff":231,"diff_files_changed":376,"diff_lines":28,"trac_diff_url":377,"vulnerabilities":378,"is_current":231},"2.0.3","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.0.3.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.0.3\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.0.2&new_path=%2Fzeno-report-comments%2Ftags%2F2.0.3",[],{"version":380,"download_url":381,"svn_tag_url":382,"released_at":28,"has_diff":231,"diff_files_changed":383,"diff_lines":28,"trac_diff_url":384,"vulnerabilities":385,"is_current":231},"2.0.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.0.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.0.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.0.1&new_path=%2Fzeno-report-comments%2Ftags%2F2.0.2",[],{"version":387,"download_url":388,"svn_tag_url":389,"released_at":28,"has_diff":231,"diff_files_changed":390,"diff_lines":28,"trac_diff_url":391,"vulnerabilities":392,"is_current":231},"2.0.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fzeno-report-comments%2Ftags%2F2.0.0&new_path=%2Fzeno-report-comments%2Ftags%2F2.0.1",[],{"version":394,"download_url":395,"svn_tag_url":396,"released_at":28,"has_diff":231,"diff_files_changed":397,"diff_lines":28,"trac_diff_url":28,"vulnerabilities":398,"is_current":231},"2.0.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzeno-report-comments.2.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fzeno-report-comments\u002Ftags\u002F2.0.0\u002F",[],[]]