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 |
---|---|
617 | extract($commentdata, EXTR_SKIP); |
618 |
|
619 | // Simple duplicate check |
620 | // expected_slashed ($comment_post_ID, $comment_author, $comment_author_email, $comment_content) |
621 | $dupe = "SELECT comment_ID FROM $wpdb->comments WHERE comment_post_ID = '$comment_post_ID' AND comment_approved != 'trash' AND ( comment_author = '$comment_author' "; |
622 | if ( $comment_author_email ) |
623 | $dupe .= "OR comment_author_email = '$comment_author_email' "; |
624 | $dupe .= ") AND comment_content = '$comment_content' LIMIT 1"; |
625 | if ( $wpdb->get_var($dupe) ) { |
626 | do_action( 'comment_duplicate_trigger', $commentdata ); |
627 | if ( defined('DOING_AJAX') ) |
628 | die( __('Duplicate comment detected; it looks as though you’ve already said that!') ); |
629 |
|
630 | wp_die( __('Duplicate comment detected; it looks as though you’ve already said that!') ); |
631 | } |
632 |
|
633 | do_action( 'check_comment_flood', $comment_author_IP, $comment_author_email, $comment_date_gmt ); |
634 |
|
635 | if ( isset($user_id) && $user_id) { |