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 3 times in this file.

Line Code
489                foreach ( $comment_ids as $comment_id ) {
490                     do_action( 'deleted_comment', $comment_id, $comments[ $comment_id ] );
491                     unset( $comments[ $comment_id ] );
492                }
493
494                clean_comment_cache( $comment_ids );
495                do_action( 'akismet_delete_comment_batch', is_countable( $comment_ids ) ? count( $comment_ids ) : 0 );
496           }
497
498           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->comments ) ) // lucky number
499                $wpdb->query("OPTIMIZE TABLE {$wpdb->comments}");
500      }
501
502      public static function delete_old_comments_meta() {
503           global $wpdb;
504
505           $interval = apply_filters( 'akismet_delete_commentmeta_interval', 15 );
506
507           # enforce a minimum of 1 day
 
Line Code
519
520                foreach ( $comment_ids as $comment_id ) {
521                     delete_comment_meta( $comment_id, 'akismet_as_submitted' );
522                     do_action( 'akismet_batch_delete_count', __FUNCTION__ );
523                }
524
525                do_action( 'akismet_delete_commentmeta_batch', is_countable( $comment_ids ) ? count( $comment_ids ) : 0 );
526           }
527
528           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->commentmeta ) ) // lucky number
529                $wpdb->query("OPTIMIZE TABLE {$wpdb->commentmeta}");
530      }
531
532      // Clear out comments meta that no longer have corresponding comments in the database
533      public static function delete_orphaned_commentmeta() {
534           global $wpdb;
535
536           $last_meta_id = 0;
537           $start_time = isset( $_SERVER['REQUEST_TIME_FLOAT'] ) ? $_SERVER['REQUEST_TIME_FLOAT'] : microtime( true );
 
Line Code
556                }
557
558                do_action( 'akismet_delete_commentmeta_batch', $commentmeta_deleted );
559
560                // If we're getting close to max_execution_time, quit for this round.
561                if ( microtime(true) - $start_time > $max_exec_time )
562                     return;
563           }
564
565           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->commentmeta ) ) // lucky number
566                $wpdb->query("OPTIMIZE TABLE {$wpdb->commentmeta}");
567      }
568
569      // how many approved comments does this author have?
570      public static function get_user_comments_approved( $user_id, $comment_author_email, $comment_author, $comment_author_url ) {
571           global $wpdb;
572
573           /**
574            * Which comment types should be ignored when counting a user's approved comments?