Menu Adam R Brown

WP hooks navigation: Home/browseActions indexFilters index

Source View: akismet_optimize_table

To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).

Understanding Source Code

The best way to understand what a hook does is to look at where it occurs in the source code.

Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.

Source View

This hook occurs 2 times in this file.

Line Code
350                // Prepared as strings since comment_id is an unsigned BIGINT, and using %d will constrain the value to the maximum signed BIGINT.
351                $format_string = implode( ", ", array_fill( 0, count( $comment_ids ), '%s' ) );
352
353                $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->comments} WHERE comment_id IN ( " . $format_string . " )", $comment_ids ) );
354                $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->commentmeta} WHERE comment_id IN ( " . $format_string . " )", $comment_ids ) );
355
356                clean_comment_cache( $comment_ids );
357           }
358
359           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->comments ) ) // lucky number
360                $wpdb->query("OPTIMIZE TABLE {$wpdb->comments}");
361      }
362
363      public static function delete_old_comments_meta() {
364           global $wpdb;
365
366           $interval = apply_filters( 'akismet_delete_commentmeta_interval', 15 );
367
368           # enfore a minimum of 1 day
 
Line Code
377                     return;
378
379                $wpdb->queries = array();
380
381                foreach ( $comment_ids as $comment_id ) {
382                     delete_comment_meta( $comment_id, 'akismet_as_submitted' );
383                }
384           }
385
386           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->commentmeta ) ) // lucky number
387                $wpdb->query("OPTIMIZE TABLE {$wpdb->commentmeta}");
388      }
389
390      // how many approved comments does this author have?
391      public static function get_user_comments_approved( $user_id, $comment_author_email, $comment_author, $comment_author_url ) {
392           global $wpdb;
393
394           if ( !empty( $user_id ) )
395                return (int) $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM {$wpdb->comments} WHERE user_id = %d AND comment_approved = 1", $user_id ) );