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
554                foreach ( $comment_ids as $comment_id ) {
555                     do_action( 'deleted_comment', $comment_id, $comments[ $comment_id ] );
556                     unset( $comments[ $comment_id ] );
557                }
558
559                clean_comment_cache( $comment_ids );
560                do_action( 'akismet_delete_comment_batch', is_countable( $comment_ids ) ? count( $comment_ids ) : 0 );
561           }
562
563           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->comments ) ) // lucky number
564                $wpdb->query("OPTIMIZE TABLE {$wpdb->comments}");
565      }
566
567      public static function delete_old_comments_meta() {
568           global $wpdb;
569
570           $interval = apply_filters( 'akismet_delete_commentmeta_interval', 15 );
571
572           # enforce a minimum of 1 day
 
Line Code
584
585                foreach ( $comment_ids as $comment_id ) {
586                     delete_comment_meta( $comment_id, 'akismet_as_submitted' );
587                     do_action( 'akismet_batch_delete_count', __FUNCTION__ );
588                }
589
590                do_action( 'akismet_delete_commentmeta_batch', is_countable( $comment_ids ) ? count( $comment_ids ) : 0 );
591           }
592
593           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->commentmeta ) ) // lucky number
594                $wpdb->query("OPTIMIZE TABLE {$wpdb->commentmeta}");
595      }
596
597      // Clear out comments meta that no longer have corresponding comments in the database
598      public static function delete_orphaned_commentmeta() {
599           global $wpdb;
600
601           $last_meta_id = 0;
602           $start_time = isset( $_SERVER['REQUEST_TIME_FLOAT'] ) ? $_SERVER['REQUEST_TIME_FLOAT'] : microtime( true );
 
Line Code
621                }
622
623                do_action( 'akismet_delete_commentmeta_batch', $commentmeta_deleted );
624
625                // If we're getting close to max_execution_time, quit for this round.
626                if ( microtime(true) - $start_time > $max_exec_time )
627                     return;
628           }
629
630           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->commentmeta ) ) // lucky number
631                $wpdb->query("OPTIMIZE TABLE {$wpdb->commentmeta}");
632      }
633
634      // how many approved comments does this author have?
635      public static function get_user_comments_approved( $user_id, $comment_author_email, $comment_author, $comment_author_url ) {
636           global $wpdb;
637
638           /**
639            * Which comment types should be ignored when counting a user's approved comments?