Настройте ответ ['body'] из wp_remote_post в php - PullRequest
0 голосов
/ 14 апреля 2020

Я хочу добавить некоторые условия if-else после получения ответа от wp_remote_post и сохранить его в таблице wordpress wp_options. Но он показывает только сообщение от последнего else print_r ($ response ['body']); Сообщение получают из другого файла.

   $url = 'http://demo.test/broker/getMSF_activation_key.php';

       $response = wp_remote_post( $url, array(
            'method'      => 'POST',
            'timeout'     => 45,
            'redirection' => 5,
            'ttpversionh' => '1.0',
            'blocking'    => true,
            'headers'     => array(),
            'body'        => array(
                'ACTIVATION_KEY' => ( $activation_key ),
                'SITE_ORIGIN' => ( $site_origin ),
            ),
            'cookies'     => array()
            )
        );

        if ( is_wp_error( $response) || ! isset( $response['body'] ) ) {
            $error_message = $response->get_error_message();
            echo "Something went wrong: $error_message";

        }else {
            //'Activation Successful.' message get from another file... Is that Ok?
            if ( $response['body'] == 'Activation successful.' ) {

            $option = 'Form Activation Key';
            $value =  $activation_key;

            add_option( $option, $value); 
            print_r($response['body']);    

            }else if ($response['body'] == 'Already registered.' ) {

                $option = 'Form Activation Key';
                $value =  $activation_key;

                    if ($option) {

                        update_option( $option, $value);
                    }
                    else
                    {
                        add_option( $option, $value);   
                    }

           }
           else
              {
                print_r( $response['body'] );

              }
       }

1 Ответ

0 голосов
/ 26 апреля 2020
$url = 'http://demo.test/broker/getMSF_activation_key.php';

   $response = wp_remote_post( $url, array(
        'method'      => 'POST',
        'timeout'     => 45,
        'redirection' => 5,
        'ttpversionh' => '1.0',
        'blocking'    => true,
        'headers'     => array(),
        'body'        => array(
            'ACTIVATION_KEY' => ( $activation_key ),
            'SITE_ORIGIN' => ( $site_origin ),
        ),
        'cookies'     => array()
        )
    );

    if ( is_wp_error( $response) || ! isset( $response['body'] ) ) {
        $error_message = $response->get_error_message();
        echo "Something went wrong: $error_message";

    }else {
        //'Activation Successful.' message get from another file... Is that Ok?
        if ( $response['body'] == 1 ) {

        $option = 'Form Activation Key';
        $value =  $activation_key;

        add_option( $option, $value); 
        print_r($response['body']);    

        }else if ($response['body'] == 2 ) {

            $option = 'Form Activation Key';
            $value =  $activation_key;

                if ($option) {

                    update_option( $option, $value);
                }
                else
                {
                    add_option( $option, $value);   
                }

       }
       else
          {
            print_r( $response['body'] );

          }
   }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...