WP hooks navigation: Home/browse • Actions index • Filters index
To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).
The best way to understand what a hook does is to look at where it occurs in the source code.
do_action( "hook_name" )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.
| Line | Code |
|---|---|
| 341 | $delete_interval = max( 1, intval( $delete_interval ) ); |
| 342 | |
| 343 | while ( $comment_ids = $wpdb->get_col( $wpdb->prepare( "SELECT comment_id FROM {$wpdb->comments} WHERE DATE_SUB(NOW(), INTERVAL %d DAY) > comment_date_gmt AND comment_approved = 'spam' LIMIT %d", $delete_interval, $delete_limit ) ) ) { |
| 344 | if ( empty( $comment_ids ) ) |
| 345 | return; |
| 346 | |
| 347 | $wpdb->queries = array(); |
| 348 | |
| 349 | foreach ( $comment_ids as $comment_id ) { |
| 350 | do_action( 'delete_comment', $comment_id ); |
| 351 | } |
| 352 | |
| 353 | // Prepared as strings since comment_id is an unsigned BIGINT, and using %d will constrain the value to the maximum signed BIGINT. |
| 354 | $format_string = implode( ", ", array_fill( 0, count( $comment_ids ), '%s' ) ); |
| 355 | |
| 356 | $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->comments} WHERE comment_id IN ( " . $format_string . " )", $comment_ids ) ); |
| 357 | $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->commentmeta} WHERE comment_id IN ( " . $format_string . " )", $comment_ids ) ); |
| 358 | |
| 359 | clean_comment_cache( $comment_ids ); |