Delete Pending Comments - Version 1.0.0

Version Description

  • Added support for PHP 5.3 to 7.4
    • Added support for WordPress versions upto 5.5
    • Fixed deprecation messages and warnings
    • Fixed a couple of UI issues
    • Going forward this plugin will be maintained by Sudar Muthu
Download this release

Release Info

Developer sudar
Plugin Icon wp plugin Delete Pending Comments
Version 1.0.0
Comparing to
See all releases

Code changes from version 0.2.1.2 to 1.0.0

css/admin.css DELETED
@@ -1,86 +0,0 @@
1
- /* version 0.2.4 */
2
- p, li {
3
- max-width: 100ex;
4
- }
5
- p {
6
- text-align: justify;
7
- }
8
- thead {
9
- text-align: center;
10
- font-weight: bold;
11
- }
12
- blockquote {
13
- font-style: italic;
14
- max-width: 80ex;
15
- }
16
-
17
- .box,
18
- #nkbox {
19
- margin: 16px 8px;
20
- padding: 8px;
21
- border-radius: 6px;
22
- -moz-border-radius: 6px;
23
- -webkit-border-radius: 6px;
24
- }
25
- #nkbox {
26
- float: right;
27
- background-color: #ddf;
28
- }
29
- #nkbox div {
30
- text-align: right;
31
- font-size: smaller;
32
- clear: right;
33
- }
34
- #nkbox ul {
35
- margin: 4px 0;
36
- }
37
- #nkbox ul li {
38
- margin: 4px 0 0 4px;
39
- }
40
- #nkbox .gravatar {
41
- float: right;
42
- margin: 8px 0 0 8px;
43
- width: 55px;
44
- text-align: center;
45
- }
46
-
47
- #clearnone {
48
- clear: none;
49
- }
50
-
51
- .nkthemeswitch-admin {
52
- text-align: center;
53
- }
54
- a.nkthemeswitch {
55
- line-height: 28px;
56
- padding: 4px 4px;
57
- background: #ddf;
58
- color: #0d0d0d;
59
- text-decoration: none;
60
- font-size: 12px;
61
- border: 1px solid #fff;
62
- border-radius: 6px;
63
- -moz-border-radius: 6px;
64
- -webkit-border-radius: 6px;
65
- white-space: pre;
66
- }
67
- a.nkthemeswitch:hover {
68
- background: #eef;
69
- border: 1px solid #ccf;
70
- }
71
-
72
- .nksnow_select_wrap {
73
- margin-right: 260px;
74
- }
75
- .nksnow_select {
76
- border: 1px solid #ccc;
77
- background: #ccf;
78
- float: left;
79
- text-align: center;
80
- padding: 0 4px 8px 4px;
81
- margin: 0 2px 2px 0;
82
- }
83
-
84
- #zcmail * {
85
- display: block;
86
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
delete-pending-comments.php CHANGED
@@ -1,13 +1,16 @@
1
  <?php
2
- /*
3
- Plugin Name: Delete Pending Comments
4
- Plugin URI: http://www.nkuttler.de/wordpress/delete-pending-comments/
5
- Author: Nicolas Kuttler
6
- Author URI: http://www.nkuttler.de/
7
- Description: A quick way to delete all pending comments. Useful for victims of spammer attacks.
8
- Version: 0.2.1.1
9
- Text Domain: delete-pending-comments
10
- */
 
 
 
11
 
12
  /**
13
  * Check if we are in admin
@@ -21,6 +24,4 @@ function nkdeletepending_load() {
21
  add_action( 'admin_menu', 'nkdeletepending_add_pages' );
22
  }
23
  }
24
- nkdeletepending_load();
25
-
26
- ?>
1
  <?php
2
+ /**
3
+ * Plugin Name: Delete Pending Comments
4
+ * Plugin URI: https://bulkwp.com
5
+ * Author: sudar
6
+ * Author URI: https://sudarmuthu.com/
7
+ * Description: A quick way to delete all pending and spam comments. Useful for victims of spammer attacks.
8
+ * Version: 1.0.0
9
+ * Text Domain: delete-pending-comments
10
+ * Domain Path: translations/
11
+ * === RELEASE NOTES ===
12
+ * Check readme file for full release notes.
13
+ */
14
 
15
  /**
16
  * Check if we are in admin
24
  add_action( 'admin_menu', 'nkdeletepending_add_pages' );
25
  }
26
  }
27
+ nkdeletepending_load();
 
 
inc/admin.php CHANGED
@@ -6,111 +6,109 @@
6
  * @since 0.1.0
7
  */
8
  function nkdeletepending_load_translation_file() {
9
- $plugin_path = plugin_basename( dirname( __FILE__ ) .'/../translations' );
10
  load_plugin_textdomain( 'delete-pending-comments', '', $plugin_path );
11
  }
12
 
13
  /**
14
- * Load admin CSS style
15
- *
16
- * @since 0.1.0
17
- *
18
- * @todo check if the path is correct
19
- */
20
- function nkdeletepending_css_admin() { ?>
21
- <link rel="stylesheet" href="<?php echo get_bloginfo( 'home' ) . '/' . PLUGINDIR . '/delete-pending-comments/css/admin.css' ?>" type="text/css" media="all" /> <?php
22
- }
23
-
24
- /**
25
- * Add admin page and CSS
26
  */
27
  function nkdeletepending_add_pages() {
28
- $page = add_submenu_page( 'edit-comments.php', __( 'Delete Pending Comments', 'delete-pending-comments' ), __( 'Delete Pending Comments', 'delete-pending-comments' ), 10, 'delete-pending-comments', 'nkdeletepending_options_page' );
29
- add_action( 'admin_head-' . $page, 'nkdeletepending_css_admin' );
30
-
31
- // Add icon
32
- add_filter( 'ozh_adminmenu_icon_delete-pending-comments', 'delete_pending_comments_icon' );
33
- }
34
-
35
- /**
36
- * Return admin menu icon
37
- *
38
- * @return string path to icon
39
- *
40
- * @since 0.1.0.1
41
- */
42
- function delete_pending_comments_icon() {
43
- return get_bloginfo( 'home' ) . '/' . PLUGINDIR . '/delete-pending-comments/pic/comment_delete.png';
44
  }
45
 
46
  /**
47
  * The admin page
48
  */
49
  function nkdeletepending_options_page() {
50
- $magic_string = __("I am sure I want to delete all pending comments and realize this can't be undone", 'delete-pending-comments' );
51
- if ( current_user_can( 'manage_options' ) ) { ?>
52
- <div class="wrap" > <?php
53
- if ( $_POST['nkdeletepending'] ) {
54
- #function_exists( 'check_admin_referer' ) ? check_admin_referer( 'delete-pending-comments' ) : null;
55
- $nonce = $_REQUEST['_wpnonce'];
56
- if ( !wp_verify_nonce( $nonce, 'delete-pending-comments' ) ) die( 'Security check' );
57
 
58
- // Limit. Timeout with 10k comments...
59
- // We only need this to see if there are any pending anyway
60
- $comments = get_comments( 'status=hold&number=1' );
 
 
 
 
 
 
61
 
62
- if ( $comments ) {
63
- if ( stripslashes( $_POST['nkdeletepending'] ) == $magic_string ) {
 
 
 
64
 
65
- /* This was waaaay to slow with 10k+ comments
66
- /*
67
- foreach ( $comments as $comment ) {
68
- wp_delete_comment( $comment->comment_ID );
69
- }
70
- */
71
- global $wpdb;
72
- $wpdb->query(
73
- $wpdb->prepare( "DELETE FROM $wpdb->comments WHERE comment_approved = 0" )
74
- );
75
 
76
- echo '<div class="updated">';
77
- _e( 'I deleted all pending comments!', 'delete-pending-comments' );
78
- echo '</div>';
79
- }
80
- else {
81
- echo '<div class="error">';
82
- _e( 'Please try again. Did you copy the text properly?', 'delete-pending-comments' );
83
- echo '</div>';
84
- }
85
- }
86
- else {
87
- echo '<div class="error">';
88
- _e( 'It looks like there aren\'t any pending comments!', 'delete-pending-comments' );
89
- echo '</div>';
90
- }
91
- } ?>
92
 
93
- <h2><?php _e( 'Delete Pending Comments', 'delete-pending-comments' ) ?></h2> <?php
94
- require_once( 'nkuttler.php' );
95
- nkuttler0_2_1_links( 'delete-pending-comments' ); ?>
96
- <p>
97
- <?php _e( 'You have to type the following text into the form to delete all pending comments:', 'delete-pending-comments' ); ?>
98
- </p>
99
 
100
- <blockquote>
101
- <?php echo $magic_string ?>
102
- </blockquote>
103
-
104
- <form action="" method="post">
105
- <?php function_exists( 'wp_nonce_field' ) ? wp_nonce_field( 'delete-pending-comments' ) : null; ?>
106
- <input name="nkdeletepending" type="text" size="80" >
107
- <p class="submit">
108
- <input type="submit" class="button-primary" value="<?php _e( 'Delete Pending Comments', 'delete-pending-comments' ) ?>">
 
 
 
 
 
 
 
 
 
109
  </p>
110
- </form>
111
- </div>
112
- <?php
113
- }
114
- }
115
 
116
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  * @since 0.1.0
7
  */
8
  function nkdeletepending_load_translation_file() {
9
+ $plugin_path = plugin_basename( dirname( __FILE__ ) . '/../translations' );
10
  load_plugin_textdomain( 'delete-pending-comments', '', $plugin_path );
11
  }
12
 
13
  /**
14
+ * Add admin page.
 
 
 
 
 
 
 
 
 
 
 
15
  */
16
  function nkdeletepending_add_pages() {
17
+ add_submenu_page( 'edit-comments.php', __( 'Delete Pending Comments', 'delete-pending-comments' ), __( 'Delete Pending Comments', 'delete-pending-comments' ), 'manage_options', 'delete-pending-comments', 'nkdeletepending_options_page' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
  }
19
 
20
  /**
21
  * The admin page
22
  */
23
  function nkdeletepending_options_page() {
24
+ global $wpdb;
25
+
26
+ $magic_string = __( "I am sure I want to delete all pending comments and realize this can't be undone", 'delete-pending-comments' );
 
 
 
 
27
 
28
+ if ( ! current_user_can( 'manage_options' ) ) {
29
+ return;
30
+ }
31
+ ?>
32
+
33
+ <div class="wrap">
34
+ <h2>
35
+ <?php _e( 'Delete Pending Comments', 'delete-pending-comments' ) ?>
36
+ </h2>
37
 
38
+ <?php
39
+ if ( isset( $_POST['nkdeletepending'] ) ) {
40
+ if ( ! wp_verify_nonce( $_REQUEST['_wpnonce'], 'delete-pending-comments' ) ) {
41
+ die( 'Security check' );
42
+ }
43
 
44
+ if ( stripslashes( $_POST['nkdeletepending'] ) == $magic_string ) {
45
+ $wpdb->query( "DELETE FROM $wpdb->comments WHERE comment_approved = 0" );
46
+ ?>
 
 
 
 
 
 
 
47
 
48
+ <div class="updated notice">
49
+ <p>
50
+ <?php _e( 'All pending and spam comments are deleted successfully from your site.', 'delete-pending-comments' ); ?>
51
+ </p>
52
+ </div>
53
+ <?php
54
+ } else {
55
+ ?>
56
+ <div class="error">
57
+ <p>
58
+ <?php _e( 'Please try again. Did you copy the text properly?', 'delete-pending-comments' ); ?>
59
+ </p>
60
+ </div>
61
+ <?php
62
+ }
63
+ } else {
64
 
65
+ $pending_comment_ids = $wpdb->get_col( "SELECT comment_ID FROM $wpdb->comments WHERE comment_approved = 0" );
66
+ $pending_comments_count = count( $pending_comment_ids );
 
 
 
 
67
 
68
+ if ( $pending_comments_count > 0 ) {
69
+ ?>
70
+ <p>
71
+ <?php
72
+ printf(
73
+ _n(
74
+ 'You have %s pending comment in your site. Do you want to delete it?',
75
+ 'You have %s pending comments in your site. Do you want to delete all of them?',
76
+ $pending_comments_count,
77
+ 'delete-pending-comments'
78
+ ),
79
+ number_format_i18n( $pending_comments_count )
80
+ );
81
+ ?>
82
+ </p>
83
+
84
+ <p>
85
+ <?php _e( 'You have to type the following text into the textbox to delete all the pending comments:', 'delete-pending-comments' ); ?>
86
  </p>
 
 
 
 
 
87
 
88
+ <blockquote>
89
+ <em>
90
+ <?php echo $magic_string ?>
91
+ </em>
92
+ </blockquote>
93
+
94
+ <form action="" method="post">
95
+ <?php wp_nonce_field( 'delete-pending-comments' ); ?>
96
+ <input name="nkdeletepending" type="text" size="80">
97
+ <p class="submit">
98
+ <input type="submit" class="button-primary"
99
+ value="<?php _e( 'Delete Pending Comments', 'delete-pending-comments' ); ?>">
100
+ </p>
101
+ </form>
102
+ <?php
103
+ } else {
104
+ ?>
105
+ <p>
106
+ <?php _e( 'There are no pending or spam comments in your site.', 'delete-pending-comments' ); ?>
107
+ </p>
108
+ <?php
109
+ }
110
+ ?>
111
+ </div>
112
+ <?php
113
+ }
114
+ }
inc/nkuttler.php DELETED
@@ -1,57 +0,0 @@
1
- <?php
2
-
3
- /**
4
- * Information about the author 0.2.1
5
- */
6
-
7
- if ( !function_exists( 'nkuttler021_links' ) ) {
8
- function nkuttler0_2_1_links( $plugin ) {
9
-
10
- $name = 'Nicolas Kuttler';
11
- $gravatar = '7b75fc655756dd5c58f4df1f4083d2e2.jpg';
12
- $url_author = 'http://www.nkuttler.de';
13
- $url_plugin = $url_author . '/wordpress/' . $plugin;
14
- $feedburner = 'http://feedburner.google.com/fb/a/mailverify?uri=NicolasKuttler&loc=en_US'; // subscribe feed per mail
15
- $profile = 'http://wordpress.org/extend/plugins/profile/nkuttler';
16
-
17
- /***/
18
-
19
- $vote = 'http://wordpress.org/extend/plugins/' . $plugin;
20
- $homeFeed = 'http://www.nkuttler.de/feed/';
21
- $commentsFeed = $url_plugin . '/feed/'; ?>
22
-
23
- <div id="nkbox" >
24
- <strong><?php _e( 'Do you like this plugin?', $plugin ) ?></strong>
25
- <div class="gravatar" >
26
- <a href="<?php echo $url_author ?>"><img src="http://www.gravatar.com/avatar/<?php echo $gravatar ?>?s=50" alt="<?php echo $author ?>" title="<?php echo $author ?>" /></a>
27
- <br />
28
- <?php echo $name ?>
29
- </div>
30
- <ul >
31
- <li>
32
- <?php printf( __( "<a href=\"%s\">Vote</a> for it", $plugin ), $vote ) ?> <br />
33
- </li>
34
- <li>
35
- <?php printf( __( "<a href=\"%s\">Visit</a> it's homepage", $plugin ), $url_plugin ) ?> <br />
36
- </li>
37
- <li>
38
- <?php printf( __( "<a href=\"%s\">Subscribe</a> the feed", $plugin ), $commentsFeed ) ?> <br />
39
- </li>
40
- </ul>
41
- <strong><?php _e( 'About the author', $plugin ) ?></strong> <br />
42
- <ul >
43
- <li>
44
- <?php printf( __( 'My <a href="%s">blog</a>', $plugin ), $url_author ) ?> <br />
45
- </li>
46
- <li>
47
- <?php printf( __( "Subscribe via <a href=\"%s\">RSS</a> or <a href=\"%s\">email</a>", $plugin ), $homeFeed, $feedburner ) ?> <br />
48
- </li>
49
- </ul>
50
- <div >
51
- <a href="<?php echo $profile ?>"><?php _e( 'My other plugins', $plugin ) ?></a><br />
52
- </div>
53
- </div> <?php
54
- }
55
- }
56
-
57
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
index.html DELETED
@@ -1,167 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html>
4
- <head>
5
- <title>Readme</title>
6
- </head>
7
- <style type="text/css">
8
- <!--
9
- body {
10
- font-family: Lucida Grande, Verdana, sans-serif;
11
- }
12
-
13
- code {
14
- font-size: 1.3em
15
- }
16
-
17
- div.success {
18
- background: #0f0;
19
- width: 50%;
20
- margin: 0 auto;
21
- padding: 1px 10px;
22
- border: 3px solid #0d0;
23
- }
24
-
25
- div.error {
26
- padding: 1px 10px;
27
- margin: 30px auto;
28
- }
29
-
30
- div.error p {
31
- font-weight: bold;
32
- }
33
-
34
- div.error ul {
35
- list-style: square;
36
- }
37
-
38
- div.fatal {
39
- background: #faa;
40
- border: 3px solid #d00;
41
- }
42
-
43
- div.warning {
44
- background: #f60;
45
- border: 3px solid #e40;
46
- }
47
-
48
- div.note {
49
- background: #5cf;
50
- border: 3px solid #3ad;
51
- }
52
-
53
- -->
54
- </style>
55
- <body>
56
- <div class='note error'><p>Notes:</p>
57
- <ul class='note error'>
58
- <li>No <code>== Upgrade Notice ==</code> section was found</li>
59
- </ul>
60
- </div> <hr />
61
-
62
- <h1>Delete Pending Comments</h1>
63
-
64
- <p><em>A quick way to delete all pending comments. Useful for victims of spammer attacks.</em></p>
65
-
66
- <hr />
67
-
68
- <p>
69
- <strong>Contributors:</strong> <a href="http://www.nkuttler.de/">nkuttler</a>, <a href="http://www.nicolaskuttler.de">Nicolas Kuttler (de)</a><br />
70
- <strong>Donate link:</strong> <a href="http://www.nkuttler.de/wordpress/donations/">http://www.nkuttler.de/wordpress/donations/</a> <br />
71
- <strong>Tags:</strong> <a href="http://www.nkuttler.de/wordpress/delete-pending-comments/">admin</a>, <a href="http://www.nkuttler.de/wordpress/delete-pending-comments/">plugin</a>, <a href="http://www.nkuttler.de/wordpress/delete-pending-comments/">comments</a>, <a href="http://www.nkuttler.de/wordpress/delete-pending-comments/">spam</a>, <a href="http://www.nkuttler.de/wordpress/delete-pending-comments/">pending</a>, <a href="http://www.nkuttler.de/wordpress/delete-pending-comments/">delete</a>, <a href="http://www.nkuttler.de/wordpress/delete-pending-comments/">delete comments</a>, <a href="http://www.nkuttler.de/wordpress/delete-pending-comments/">mass delete</a>, <a href="http://www.nkuttler.de/wordpress/delete-pending-comments/">mass delete comments</a>, <br />
72
- <strong>Requires at least:</strong> 2.7<br />
73
- <strong>Tested up to:</strong> 3.0<br />
74
- <strong>Stable tag:</strong> 0.2.1.1 </p>
75
-
76
- <hr />
77
-
78
- <h3>Description</h3>
79
- <p>This plugin is a quick way to delete all pending comments. It's useful for victims of spammer attacks.</p>
80
-
81
- <h4>My plugins</h4>
82
-
83
- <p><a href="http://www.nkuttler.de/2010/05/21/record-movies-of-visitors/">Visitor Movies for WordPress</a>: Did you ever want to know what your visitors are really doing on your site? Watch them!</p>
84
-
85
- <p><a href="http://www.nkuttler.de/wordpress/nktagcloud/">Better tag cloud</a>: I was pretty unhappy with the default WordPress tag cloud widget. This one is more powerful and offers a list HTML markup that is consistent with most other widgets.</p>
86
-
87
- <p><a href="http://www.nkuttler.de/wordpress/nkthemeswitch/">Theme switch</a>: I like to tweak my main theme that I use on a variety of blogs. If you have ever done this you know how annoying it can be to break things for visitors of your blog. This plugin allows you to use a different theme than the one used for your visitors when you are logged in.</p>
88
-
89
- <p><a href="http://www.nkuttler.de/wordpress/zero-conf-mail/">Zero Conf Mail</a>: Simple mail contact form, the way I like it. No ajax, no bloat. No configuration necessary, but possible.</p>
90
-
91
- <p><a href="http://www.nkuttler.de/wordpress/custom-avatars-for-comments/">Custom avatars for comments</a>: Add a personal touch: Your visitors will be able to choose from the avatars you upload to your website for each and every comment they make.</p>
92
-
93
- <p><a href="http://www.nkuttler.de/wordpress/nkmovecomments/">Move WordPress comments</a>: This plugin adds a small form to every comment on your blog. The form is only added for admins and allows you to <a href="http://www.nkuttler.de/nkmovecomments/">move comments</a> to a different post/page and to fix comment threading.</p>
94
-
95
- <p><a href="http://www.nkuttler.de/wordpress/delete-pending-comments">Delete Pending Comments</a>: This is a plugin that lets you delete all pending comments at once. Useful for spam victims.</p>
96
-
97
- <p><a href="http://www.nkuttler.de/wordpress/nksnow/">Snow and more</a>: This one lets you see snowflakes, leaves, raindrops, balloons or custom images fall down or float upwards on your blog.</p>
98
-
99
- <p><a href="http://www.nkuttler.de/wordpress/nkfireworks/">Fireworks</a>: The name says it all, see fireworks on your blog!</p>
100
-
101
- <p><a href="http://www.rhymebox.de/blog/rhymebox-widget/">Rhyming widget</a>: I wrote a little online <a href="http://www.rhymebox.com/">rhyming dictionary</a>. This is a widget to search it directly from one of your sidebars.</p> <hr />
102
- <h3>Installation</h3>
103
- <p>Unzip, upload to your plugin directory. You can delete the comments under the top level 'Comments' menu.</p> <hr />
104
- <h3>Frequently Asked Questions</h3>
105
- <p>Q: How do I delete the pending comments?<br />
106
- A: The plugin page is located under the top level menu entry "Comments". Copy and paste the text, submit, done.</p> <hr />
107
- <h3>Screenshots</h3>
108
- <ol>
109
- <li>The delete comments page (comments menu).</li>
110
- </ol> <hr />
111
- <h3>Changelog</h3>
112
- <h4>0.2.1.1</h4>
113
-
114
- <ul>
115
- <li>Documentation update</li>
116
- </ul>
117
-
118
- <h4>0.2.1</h4>
119
-
120
- <ul>
121
- <li>Manipulate the database directly. Using WordPress functions was way too slow with 10k or more pending comments.</li>
122
- </ul>
123
-
124
- <h4>0.1.1.1</h4>
125
-
126
- <ul>
127
- <li>Fix version number...</li>
128
- </ul>
129
-
130
- <h4>0.1.1</h4>
131
-
132
- <ul>
133
- <li>Add icon by <a href="http://www.famfamfam.com">famfamfam</a> to the <a href="http://planetozh.com/blog/my-projects/wordpress-admin-menu-drop-down-css/">Admin Drop Down Menu</a>.</li>
134
- <li>Re-organize files</li>
135
- </ul>
136
-
137
- <h4>0.1.0</h4>
138
-
139
- <ul>
140
- <li>Improve I18N, styling, layout, readability, add info</li>
141
- </ul>
142
-
143
- <h4>0.0.3</h4>
144
-
145
- <ul>
146
- <li>More small fixes</li>
147
- </ul>
148
-
149
- <h4>0.0.2</h4>
150
-
151
- <ul>
152
- <li>Small fixes</li>
153
- </ul>
154
-
155
- <h4>0.0.1</h4>
156
-
157
- <ul>
158
- <li>Initial release</li>
159
- </ul> <hr />
160
-
161
- <h3>Upgrade Notice</h3>
162
- <dl>
163
-
164
- Warning: Invalid argument supplied for foreach() in /home/nicolas/local/lib/validator.php on line 112
165
- </dl>
166
-
167
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
pic/comment_delete.png DELETED
Binary file
readme.txt CHANGED
@@ -1,60 +1,73 @@
1
  === Delete Pending Comments ===
 
 
 
 
 
 
2
 
3
- Contributors: nkuttler
4
- Author URI: http://www.nkuttler.de/
5
- Plugin URI: http://www.nkuttler.de/wordpress/delete-pending-comments/
6
- Donate link: http://www.nkuttler.de/wordpress/donations/
7
- Tags: admin, plugin, comments, spam, pending, delete, delete comments, mass delete, mass delete comments
8
- Requires at least: 2.7
9
- Tested up to: 3.0
10
- Stable tag: 0.2.1.1
11
-
12
- A quick way to delete all pending comments. Useful for victims of spammer attacks.
13
 
14
  == Description ==
15
- This plugin is a quick way to delete all pending comments. It's useful for victims of spammer attacks.
16
 
17
- = My plugins =
18
 
19
- [Visitor Movies for WordPress](http://www.nkuttler.de/2010/05/21/record-movies-of-visitors/): Did you ever want to know what your visitors are really doing on your site? Watch them!
20
 
21
- [Better tag cloud](http://www.nkuttler.de/wordpress/nktagcloud/): I was pretty unhappy with the default WordPress tag cloud widget. This one is more powerful and offers a list HTML markup that is consistent with most other widgets.
22
 
23
- [Theme switch](http://www.nkuttler.de/wordpress/nkthemeswitch/): I like to tweak my main theme that I use on a variety of blogs. If you have ever done this you know how annoying it can be to break things for visitors of your blog. This plugin allows you to use a different theme than the one used for your visitors when you are logged in.
24
 
25
- [Zero Conf Mail](http://www.nkuttler.de/wordpress/zero-conf-mail/): Simple mail contact form, the way I like it. No ajax, no bloat. No configuration necessary, but possible.
 
 
26
 
27
- [Custom avatars for comments](http://www.nkuttler.de/wordpress/custom-avatars-for-comments/): Add a personal touch: Your visitors will be able to choose from the avatars you upload to your website for each and every comment they make.
 
28
 
29
- [Move WordPress comments](http://www.nkuttler.de/wordpress/nkmovecomments/): This plugin adds a small form to every comment on your blog. The form is only added for admins and allows you to [move comments](http://www.nkuttler.de/nkmovecomments/) to a different post/page and to fix comment threading.
30
 
31
- [Delete Pending Comments](http://www.nkuttler.de/wordpress/delete-pending-comments): This is a plugin that lets you delete all pending comments at once. Useful for spam victims.
32
 
33
- [Snow and more](http://www.nkuttler.de/wordpress/nksnow/): This one lets you see snowflakes, leaves, raindrops, balloons or custom images fall down or float upwards on your blog.
34
 
35
- [Fireworks](http://www.nkuttler.de/wordpress/nkfireworks/): The name says it all, see fireworks on your blog!
36
 
37
- [Rhyming widget](http://www.rhymebox.de/blog/rhymebox-widget/): I wrote a little online [rhyming dictionary](http://www.rhymebox.com/). This is a widget to search it directly from one of your sidebars.
38
 
39
- == Installation ==
40
- Unzip, upload to your plugin directory. You can delete the comments under the top level 'Comments' menu.
 
41
 
42
  == Screenshots ==
43
- 1. The delete comments page (comments menu).
44
 
45
- == Frequently Asked Questions ==
46
- Q: How do I delete the pending comments?<br />
47
- A: The plugin page is located under the top level menu entry "Comments". Copy and paste the text, submit, done.
 
 
48
 
49
  == Changelog ==
 
 
 
 
 
 
 
 
 
 
50
  = 0.2.1.1 =
51
  * Documentation update
 
52
  = 0.2.1 =
53
  * Manipulate the database directly. Using WordPress functions was way too slow with 10k or more pending comments.
54
  = 0.1.1.1 =
55
  * Fix version number...
56
  = 0.1.1 =
57
- * Add icon by <a href="http://www.famfamfam.com">famfamfam</a> to the <a href="http://planetozh.com/blog/my-projects/wordpress-admin-menu-drop-down-css/">Admin Drop Down Menu</a>.
58
  * Re-organize files
59
  = 0.1.0 =
60
  * Improve I18N, styling, layout, readability, add info
1
  === Delete Pending Comments ===
2
+ Contributors: sudar
3
+ Tags: comments, spam, pending, delete, mass delete comments
4
+ Requires PHP: 5.3
5
+ Requires at least: 2.7
6
+ Tested up to: 5.8
7
+ Stable tag: 1.0.0
8
 
9
+ A quick way to delete all pending and spam comments. Useful for victims of spammer attacks.
 
 
 
 
 
 
 
 
 
10
 
11
  == Description ==
12
+ This plugin is a quick way to delete all pending and spam comments. It's useful for victims of spammer attacks.
13
 
14
+ After installing the plugin go to Comments -> Delete Pending Comments and follow the instructions to delete all the pending comments.
15
 
16
+ == Credits ==
17
 
18
+ This plugin was originally developed by [Nicolas Kuttler](http://www.nkuttler.de/) and he maintained it till June 24, 2020.
19
 
20
+ From June 24, 2020, [Sudar Muthu](https://sudarmuthu.com) took over the development and maintenance of the plugin.
21
 
22
+ == Installation ==
23
+ ### From WordPress Admin
24
+ You can install the plugin directly from WordPress admin interface by going to Plugins -> Add New and then searching for 'Delete Pending Comments' plugin.
25
 
26
+ ### Normal WordPress installations
27
+ Extract the zip file and just drop the contents in the wp-content/plugins/ directory of your WordPress installation and then activate the Plugin from Plugins page.
28
 
29
+ == Frequently Asked Questions ==
30
 
31
+ ### How do I delete the pending comments?
32
 
33
+ Go to Comments -> Delete Pending Comments and follow the instructions to delete all the pending or spam comments.
34
 
35
+ ### Can the plugin also delete all spam comments?
36
 
37
+ Yes, the plugin can delete both pending and spam comments.
38
 
39
+ ### Is there a way to retrieve the comments that were deleted?
40
+
41
+ No. There is no way to retrieve the comments that were deleted. So please take a backup if you need to restore the deleted comments.
42
 
43
  == Screenshots ==
 
44
 
45
+ 1. Go to Comments -> Delete Pending Comments to see the list of pending comments.
46
+
47
+ 2. Type the text that is shown to confirm the deletion of all pending comments.
48
+
49
+ 3. The success message that is shown after the comments are deleted.
50
 
51
  == Changelog ==
52
+ = 1.0.0 =
53
+ * Added support for PHP 5.3 to 7.4
54
+ * Added support for WordPress versions upto 5.5
55
+ * Fixed deprecation messages and warnings
56
+ * Fixed a couple of UI issues
57
+ * Going forward this plugin will be maintained by <a href="https://SudarMuthu.com">Sudar Muthu</a>
58
+
59
+ = 0.2.1.2 =
60
+ * Documentation update and test against 3.5
61
+
62
  = 0.2.1.1 =
63
  * Documentation update
64
+
65
  = 0.2.1 =
66
  * Manipulate the database directly. Using WordPress functions was way too slow with 10k or more pending comments.
67
  = 0.1.1.1 =
68
  * Fix version number...
69
  = 0.1.1 =
70
+ * Add icon by <a href"http://www.famfamfam.com">famfamfam</a> to the <a href"http://planetozh.com/blog/my-projects/wordpress-admin-menu-drop-down-css/">Admin Drop Down Menu</a>.
71
  * Re-organize files
72
  = 0.1.0 =
73
  * Improve I18N, styling, layout, readability, add info
screenshot-1.png DELETED
Binary file
translations/delete-pending-comments.pot CHANGED
@@ -1,102 +1,68 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR Nicolas Kuttler
3
- # This file is distributed under the same license as the PACKAGE package.
4
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5
- #
6
- #, fuzzy
7
  msgid ""
8
  msgstr ""
9
- "Project-Id-Version: PACKAGE VERSION\n"
10
- "Report-Msgid-Bugs-To: http://wordpress.org/tag/delete-pending-comments\n"
11
- "POT-Creation-Date: 2009-10-17 10:09+0000\n"
12
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
- "Language-Team: LANGUAGE <LL@li.org>\n"
15
  "MIME-Version: 1.0\n"
16
- "Content-Type: text/plain; charset=CHARSET\n"
17
  "Content-Transfer-Encoding: 8bit\n"
 
 
 
 
18
 
19
- #. #-#-#-#-# plugin.pot (PACKAGE VERSION) #-#-#-#-#
20
- #. Plugin Name of an extension
21
- #: inc/admin.php:28 inc/admin.php:68 inc/admin.php:83
22
  msgid "Delete Pending Comments"
23
  msgstr ""
24
 
25
- #: inc/admin.php:36
26
  msgid ""
27
  "I am sure I want to delete all pending comments and realize this can't be "
28
  "undone"
29
  msgstr ""
30
 
31
- #: inc/admin.php:52
32
- msgid "I deleted all pending comments!"
33
  msgstr ""
34
 
35
- #: inc/admin.php:57
36
  msgid "Please try again. Did you copy the text properly?"
37
  msgstr ""
38
 
39
- #: inc/admin.php:63
40
- msgid "It looks like there aren't any pending comments!"
41
- msgstr ""
 
 
 
 
42
 
43
- #: inc/admin.php:72
44
  msgid ""
45
- "You have to type the following text into the form to delete all pending "
46
- "comments:"
47
- msgstr ""
48
-
49
- #: inc/nkuttler.php:24
50
- msgid "Do you like this plugin?"
51
- msgstr ""
52
-
53
- #: inc/nkuttler.php:32
54
- #, php-format
55
- msgid "<a href=\"%s\">Vote</a> for it"
56
- msgstr ""
57
-
58
- #: inc/nkuttler.php:35
59
- #, php-format
60
- msgid "<a href=\"%s\">Visit</a> it's homepage"
61
- msgstr ""
62
-
63
- #: inc/nkuttler.php:38
64
- #, php-format
65
- msgid "<a href=\"%s\">Subscribe</a> the feed"
66
- msgstr ""
67
-
68
- #: inc/nkuttler.php:41
69
- msgid "About the author"
70
- msgstr ""
71
-
72
- #: inc/nkuttler.php:44
73
- #, php-format
74
- msgid "My <a href=\"%s\">blog</a>"
75
- msgstr ""
76
-
77
- #: inc/nkuttler.php:47
78
- #, php-format
79
- msgid "Subscribe via <a href=\"%s\">RSS</a> or <a href=\"%s\">email</a>"
80
  msgstr ""
81
 
82
- #: inc/nkuttler.php:51
83
- msgid "My other plugins"
84
  msgstr ""
85
 
86
- #. Plugin URI of an extension
87
- msgid "http://www.nkuttler.de/wordpress/delete-pending-comments/"
88
  msgstr ""
89
 
90
- #. Description of an extension
91
  msgid ""
92
- "A quick way to delete all pending comments. Useful for victims of spammer "
93
- "attacks."
94
  msgstr ""
95
 
96
- #. Author of an extension
97
- msgid "Nicolas Kuttler"
98
  msgstr ""
99
 
100
- #. Author URI of an extension
101
- msgid "http://www.nkuttler.de/"
102
  msgstr ""
1
+ # Copyright (C) 2020 sudar
2
+ # This file is distributed under the same license as the Delete Pending Comments package.
 
 
 
 
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Delete Pending Comments 1.0.0\n"
6
+ "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/delete-pending-comments\n"
7
+ "POT-Creation-Date: 2020-08-16 07:23:53+00:00\n"
 
 
 
8
  "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
+ "PO-Revision-Date: 2020-MO-DA HO:MI+ZONE\n"
12
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
+ "Language-Team: LANGUAGE <LL@li.org>\n"
14
+ "X-Generator: grunt-wp-i18n 1.0.3\n"
15
 
16
+ #. Plugin Name of the plugin/theme
 
 
17
  msgid "Delete Pending Comments"
18
  msgstr ""
19
 
20
+ #: inc/admin.php:26
21
  msgid ""
22
  "I am sure I want to delete all pending comments and realize this can't be "
23
  "undone"
24
  msgstr ""
25
 
26
+ #: inc/admin.php:50
27
+ msgid "All pending and spam comments are deleted successfully from your site."
28
  msgstr ""
29
 
30
+ #: inc/admin.php:58
31
  msgid "Please try again. Did you copy the text properly?"
32
  msgstr ""
33
 
34
+ #: inc/admin.php:73
35
+ msgid "You have %s pending comment in your site. Do you want to delete it?"
36
+ msgid_plural ""
37
+ "You have %s pending comments in your site. Do you want to delete all of "
38
+ "them?"
39
+ msgstr[0] ""
40
+ msgstr[1] ""
41
 
42
+ #: inc/admin.php:85
43
  msgid ""
44
+ "You have to type the following text into the textbox to delete all the "
45
+ "pending comments:"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
46
  msgstr ""
47
 
48
+ #: inc/admin.php:106
49
+ msgid "There are no pending or spam comments in your site."
50
  msgstr ""
51
 
52
+ #. Plugin URI of the plugin/theme
53
+ msgid "https://bulkwp.com"
54
  msgstr ""
55
 
56
+ #. Description of the plugin/theme
57
  msgid ""
58
+ "A quick way to delete all pending and spam comments. Useful for victims of "
59
+ "spammer attacks."
60
  msgstr ""
61
 
62
+ #. Author of the plugin/theme
63
+ msgid "sudar"
64
  msgstr ""
65
 
66
+ #. Author URI of the plugin/theme
67
+ msgid "https://sudarmuthu.com/"
68
  msgstr ""