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.

  • Action hooks look like this: do_action( "hook_name" )
  • Filter hooks look like this: apply_filters( "hook_name", "what_to_filter" ).

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

Source View

Line Code
391           return;
392           
393      $comma_comment_ids = implode( ', ', array_map('intval', $comment_ids) );
394
395      do_action( 'delete_comment', $comment_ids );
396      $wpdb->query("DELETE FROM $wpdb->comments WHERE comment_id IN ( $comma_comment_ids )");
397      $wpdb->query("DELETE FROM $wpdb->commentmeta WHERE comment_id IN ( $comma_comment_ids )");
398      clean_comment_cache( $comment_ids );
399      $n = mt_rand(1, 5000);
400      if ( apply_filters('akismet_optimize_table', ($n == 11)) ) // lucky number
401           $wpdb->query("OPTIMIZE TABLE $wpdb->comments");
402
403 }
404
405 add_action('akismet_scheduled_delete', 'akismet_delete_old');
406
407 function akismet_check_db_comment( $id, $recheck_reason = 'recheck_queue' ) {
408     global $wpdb, $akismet_api_host, $akismet_api_port;
409