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
525                foreach ( $comment_ids as $comment_id ) {
526                     do_action( 'deleted_comment', $comment_id, $comments[ $comment_id ] );
527                     unset( $comments[ $comment_id ] );
528                }
529
530                clean_comment_cache( $comment_ids );
531                do_action( 'akismet_delete_comment_batch', is_countable( $comment_ids ) ? count( $comment_ids ) : 0 );
532           }
533
534           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->comments ) ) // lucky number
535                $wpdb->query("OPTIMIZE TABLE {$wpdb->comments}");
536      }
537
538      public static function delete_old_comments_meta() {
539           global $wpdb;
540
541           $interval = apply_filters( 'akismet_delete_commentmeta_interval', 15 );
542
543           # enforce a minimum of 1 day
 
Line Code
555
556                foreach ( $comment_ids as $comment_id ) {
557                     delete_comment_meta( $comment_id, 'akismet_as_submitted' );
558                     do_action( 'akismet_batch_delete_count', __FUNCTION__ );
559                }
560
561                do_action( 'akismet_delete_commentmeta_batch', is_countable( $comment_ids ) ? count( $comment_ids ) : 0 );
562           }
563
564           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->commentmeta ) ) // lucky number
565                $wpdb->query("OPTIMIZE TABLE {$wpdb->commentmeta}");
566      }
567
568      // Clear out comments meta that no longer have corresponding comments in the database
569      public static function delete_orphaned_commentmeta() {
570           global $wpdb;
571
572           $last_meta_id = 0;
573           $start_time = isset( $_SERVER['REQUEST_TIME_FLOAT'] ) ? $_SERVER['REQUEST_TIME_FLOAT'] : microtime( true );
 
Line Code
592                }
593
594                do_action( 'akismet_delete_commentmeta_batch', $commentmeta_deleted );
595
596                // If we're getting close to max_execution_time, quit for this round.
597                if ( microtime(true) - $start_time > $max_exec_time )
598                     return;
599           }
600
601           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->commentmeta ) ) // lucky number
602                $wpdb->query("OPTIMIZE TABLE {$wpdb->commentmeta}");
603      }
604
605      // how many approved comments does this author have?
606      public static function get_user_comments_approved( $user_id, $comment_author_email, $comment_author, $comment_author_url ) {
607           global $wpdb;
608
609           /**
610            * Which comment types should be ignored when counting a user's approved comments?