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
436                foreach ( $comment_ids as $comment_id ) {
437                     do_action( 'deleted_comment', $comment_id, $comments[ $comment_id ] );
438                     unset( $comments[ $comment_id ] );
439                }
440
441                clean_comment_cache( $comment_ids );
442                do_action( 'akismet_delete_comment_batch', count( $comment_ids ) );
443           }
444
445           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->comments ) ) // lucky number
446                $wpdb->query("OPTIMIZE TABLE {$wpdb->comments}");
447      }
448
449      public static function delete_old_comments_meta() {
450           global $wpdb;
451
452           $interval = apply_filters( 'akismet_delete_commentmeta_interval', 15 );
453
454           # enforce a minimum of 1 day
 
Line Code
466
467                foreach ( $comment_ids as $comment_id ) {
468                     delete_comment_meta( $comment_id, 'akismet_as_submitted' );
469                     do_action( 'akismet_batch_delete_count', __FUNCTION__ );
470                }
471
472                do_action( 'akismet_delete_commentmeta_batch', count( $comment_ids ) );
473           }
474
475           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->commentmeta ) ) // lucky number
476                $wpdb->query("OPTIMIZE TABLE {$wpdb->commentmeta}");
477      }
478
479      // Clear out comments meta that no longer have corresponding comments in the database
480      public static function delete_orphaned_commentmeta() {
481           global $wpdb;
482
483           $last_meta_id = 0;
484           $start_time = isset( $_SERVER['REQUEST_TIME_FLOAT'] ) ? $_SERVER['REQUEST_TIME_FLOAT'] : microtime( true );
 
Line Code
503                }
504
505                do_action( 'akismet_delete_commentmeta_batch', $commentmeta_deleted );
506
507                // If we're getting close to max_execution_time, quit for this round.
508                if ( microtime(true) - $start_time > $max_exec_time )
509                     return;
510           }
511
512           if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->commentmeta ) ) // lucky number
513                $wpdb->query("OPTIMIZE TABLE {$wpdb->commentmeta}");
514      }
515
516      // how many approved comments does this author have?
517      public static function get_user_comments_approved( $user_id, $comment_author_email, $comment_author, $comment_author_url ) {
518           global $wpdb;
519
520           /**
521            * Which comment types should be ignored when counting a user's approved comments?