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 |
---|---|
298 | self::$last_comment_result = 'spam'; |
299 |
|
300 | $discard = ( isset( $commentdata['akismet_pro_tip'] ) && $commentdata['akismet_pro_tip'] === 'discard' && self::allow_discard() ); |
301 |
|
302 | do_action( 'akismet_spam_caught', $discard ); |
303 |
|
304 | if ( $discard ) { |
305 | // The spam is obvious, so we're bailing out early. |
306 | // akismet_result_spam() won't be called so bump the counter here |
307 | if ( $incr = apply_filters( 'akismet_spam_count_incr', 1 ) ) { |
308 | update_option( 'akismet_spam_count', get_option( 'akismet_spam_count' ) + $incr ); |
309 | } |
310 |
|
311 | if ( 'rest_api' === $context ) { |
312 | return new WP_Error( 'akismet_rest_comment_discarded', __( 'Comment discarded.', 'akismet' ) ); |
313 | } else if ( 'xml-rpc' === $context ) { |
314 | // If this is a pingback that we're pre-checking, the discard behavior is the same as the normal spam response behavior. |
315 | return $commentdata; |
316 | } else { |
Line | Code |
1191 | // If the last comment we checked has had its approval set to 'trash', |
1192 | // then it failed the comment blacklist check. Let that blacklist override |
1193 | // the spam check, since users have the (valid) expectation that when |
1194 | // they fill out their blacklists, comments that match it will always |
1195 | // end up in the trash. |
1196 | return $approved; |
1197 | } |
1198 |
|
1199 | // bump the counter here instead of when the filter is added to reduce the possibility of overcounting |
1200 | if ( $incr = apply_filters('akismet_spam_count_incr', 1) ) |
1201 | update_option( 'akismet_spam_count', get_option('akismet_spam_count') + $incr ); |
1202 |
|
1203 | return self::$last_comment_result; |
1204 | } |
1205 | |
1206 | /** |
1207 | * If Akismet is temporarily unreachable, we don't want to "spam" the blogger with |
1208 | * moderation emails for comments that will be automatically cleared or spammed on |
1209 | * the next retry. |