Menu Adam R Brown

WP hooks navigation: Home/browseActions indexFilters index

Source View: akismet_https_request_failure

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.

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

Source View

This hook occurs 2 times in this file.

Line Code
1020
1021                do_action( 'akismet_https_request_pre' );
1022           }
1023
1024           $response = wp_remote_post( $akismet_url, $http_args );
1025
1026           Akismet::log( compact( 'akismet_url', 'http_args', 'response' ) );
1027
1028           if ( $ssl && is_wp_error( $response ) ) {
1029                do_action( 'akismet_https_request_failure', $response );
1030
1031                // Intermittent connection problems may cause the first HTTPS
1032                // request to fail and subsequent HTTP requests to succeed randomly.
1033                // Retry the HTTPS request once before disabling SSL for a time.
1034                $response = wp_remote_post( $akismet_url, $http_args );
1035                
1036                Akismet::log( compact( 'akismet_url', 'http_args', 'response' ) );
1037
1038                if ( is_wp_error( $response ) ) {
1039                     $ssl_failed = true;
1040
1041                     do_action( 'akismet_https_request_failure', $response );
1042
1043                     do_action( 'akismet_http_request_pre' );
1044
1045                     // Try the request again without SSL.
1046                     $response = wp_remote_post( $http_akismet_url, $http_args );
1047
1048                     Akismet::log( compact( 'http_akismet_url', 'http_args', 'response' ) );
1049                }
1050           }