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.
This hook occurs 2 times in this file.
| Line | Code |
|---|---|
| 131 | // akismet_spam_count will be incremented later by comment_is_spam() |
| 132 | self::$last_comment_result = 'spam'; |
| 133 | |
| 134 | $discard = ( isset( $commentdata['akismet_pro_tip'] ) && $commentdata['akismet_pro_tip'] === 'discard' && self::allow_discard() ); |
| 135 | |
| 136 | do_action( 'akismet_spam_caught', $discard ); |
| 137 | |
| 138 | if ( $discard ) { |
| 139 | // akismet_result_spam() won't be called so bump the counter here |
| 140 | if ( $incr = apply_filters('akismet_spam_count_incr', 1) ) |
| 141 | update_option( 'akismet_spam_count', get_option('akismet_spam_count') + $incr ); |
| 142 | $redirect_to = isset( $_SERVER['HTTP_REFERER'] ) ? $_SERVER['HTTP_REFERER'] : get_permalink( $post ); |
| 143 | wp_safe_redirect( esc_url_raw( $redirect_to ) ); |
| 144 | die(); |
| 145 | } |
| 146 | } |
| 147 | |
| 148 | // if the response is neither true nor false, hold the comment for moderation and schedule a recheck |
| 149 | if ( 'true' != $response[1] && 'false' != $response[1] ) { |
| Line | Code |
| 552 | // filter handler used to return a spam result to pre_comment_approved |
| 553 | public static function last_comment_status( $approved, $comment ) { |
| 554 | // Only do this if it's the correct comment |
| 555 | if ( is_null(self::$last_comment_result) || ! self::matches_last_comment( $comment ) ) { |
| 556 | self::log( "comment_is_spam mismatched comment, returning unaltered $approved" ); |
| 557 | return $approved; |
| 558 | } |
| 559 | |
| 560 | // bump the counter here instead of when the filter is added to reduce the possibility of overcounting |
| 561 | if ( $incr = apply_filters('akismet_spam_count_incr', 1) ) |
| 562 | update_option( 'akismet_spam_count', get_option('akismet_spam_count') + $incr ); |
| 563 | |
| 564 | return self::$last_comment_result; |
| 565 | } |
| 566 | |
| 567 | /** |
| 568 | * If Akismet is temporarily unreachable, we don't want to "spam" the blogger with |
| 569 | * moderation emails for comments that will be automatically cleared or spammed on |
| 570 | * the next retry. |