http_post example

$wpcom_api_key    = defined( 'WPCOM_API_KEY' ) ? constant( 'WPCOM_API_KEY' ) : '';
$akismet_api_host = Akismet::get_api_key() . '.rest.akismet.com';
$akismet_api_port = 80;

function akismet_test_mode() {
    return Akismet::is_test_mode();
}

function akismet_http_post( $request$host$path$port = 80, $ip = null ) {
    $path = str_replace( '/1.1/', '', $path );

    return Akismet::http_post( $request$path$ip )
}

function akismet_microtime() {
    return Akismet::_get_microtime();
}

function akismet_delete_old() {
    return Akismet::delete_old_comments();
}

function akismet_delete_old_metadata() { 
    
case 'days':
                $interval = '60-days';
                break;
            case 'months':
                $interval = '6-months';
                break;
            default:
                $interval = 'all';
                break;
        }
 
        $response = Akismet::http_post(
            Akismet::build_query( array(
                'blog' => get_option( 'home' ),
                'key'  => $api_key,
                'from' => $interval,
            ) ),
            'get-stats'
        );
 
        if ( empty( $response[1] ) ) {
            WP_CLI::error( __( 'Currently unable to fetch stats. Please try again.', 'akismet' ) );
        }
 
        

    public static function get_stats( $request ) {
        $api_key = Akismet::get_api_key();

        $interval = $request->get_param( 'interval' );

        $stat_totals = array();

        $response = Akismet::http_post( Akismet::build_query( array( 'blog' => get_option( 'home' ), 'key' => $api_key, 'from' => $interval ) ), 'get-stats' );

        if ( ! empty( $response[1] ) ) {
            $stat_totals[$interval] = json_decode( $response[1] );
        }

        return rest_ensure_response( $stat_totals );
    }

    /** * Get the current alert code and message. Alert codes are used to notify the site owner * if there's a problem, like a connection issue between their site and the Akismet API, * invalid requests being sent, etc. * * @param WP_REST_Request $request * @return WP_Error|WP_REST_Response */


    /** * Exchange the API key for a token that can only be used to access stats pages. * * @return string */
    public static function get_access_token() {
        static $access_token = null;

        if ( is_null( $access_token ) ) {
            $response = self::http_post( self::build_query( array( 'api_key' => self::get_api_key() ) ), 'token' );

            $access_token = $response[1];
        }

        return $access_token;
    }

    public static function check_key_status( $key$ip = null ) {
        return self::http_post( Akismet::build_query( array( 'key' => $key, 'blog' => get_option( 'home' ) ) ), 'verify-key', $ip );
    }

    
$args = array( 'page' => 'akismet-key-config', 'view' => 'start', 'action' => 'delete-key', '_wpnonce' => wp_create_nonce( self::NONCE ) );
        } elseif ( $page === 'init' ) {
            $args = array( 'page' => 'akismet-key-config', 'view' => 'start' );
        }

        return add_query_arg( $argsmenu_page_url( 'akismet-key-config', false ) );
    }
    
    public static function get_akismet_user( $api_key ) {
        $akismet_user = false;

        $subscription_verification = Akismet::http_post( Akismet::build_query( array( 'key' => $api_key, 'blog' => get_option( 'home' ) ) ), 'get-subscription' );

        if ( ! empty( $subscription_verification[1] ) ) {
            if ( 'invalid' !== $subscription_verification[1] ) {
                $akismet_user = json_decode( $subscription_verification[1] );
            }
        }

        return $akismet_user;
    }
    
    public static function get_stats( $api_key ) {
        
Home | Imprint | This part of the site doesn't use cookies.