Cakephp 3 – Http Cliente y WP REST API v2 de WordPress

Para crear, leer, actualizar y eliminar usuarios (Ccreate, Read, Uptate y Delete) de WordPress utilizando la WP REST API v2 desde Http Client de Cakephp 3, seguimos los siguientes pasos:

  • Create:
  • // Cakephp create
    $http = new Client();
    $response = $http->post('https://midominio.com/wp-json/wp/v2/users', 
        ['username' => 'prueba', 'password' => 'prueba', 'email' => '[email protected]'], 
        ['auth' => ['username' => 'miusuario', 'password' => 'mipassword']
    ]);
    $json = $response->getJson();
    debug($json);
    $estatusPeticion = $response->getStatusCode();
    if ($estatusPeticion < 300)
    { 
        echo('Usuario creado satisfactoriamente');
    }
    else
    {
        echo('Error al crear el usuario. Código del error: ' . $estatusPeticion);
    }
    
  • Read:
  • // Cakephp read
    $http = new Client();
    // $response = $http->get('https://midominio.com/wp-json/wp/v2/users/9',
        [], 
        ['auth' => ['username' => 'miusuario', 'password' => 'mipassword']
    ]);
    $json = $response->getJson();
    debug($json);
    $estatusPeticion = $response->getStatusCode();
    if ($estatusPeticion < 300)
    { 
        echo('Búsqueda satisfactoria');
    }
    else
    {
        echo('Error en la búsqueda del usuario. Código del error: ' . $estatusPeticion);
    }
    
    
  • Update:
  • // Cakephp update
    $http = new Client();
    $response = $http->put('https://midominio.com/wp-json/wp/v2/users/3', 
        ['email' => '[email protected]'], 
        ['auth' => ['username' => 'miusuario', 'password' => 'mipassword']
    ]);
    $json = $response->getJson();
    debug($json);
    $estatusPeticion = $response->getStatusCode();
    if ($estatusPeticion < 300)
    { 
        echo('Usuario actualizado satisfactoriamente');
    }
    else
    {
        echo('Error al intentar actualizar el usuario. Código del error: ' . $estatusPeticion);
    }
    
  • Delete:
  • // Cakephp delete
    $http = new Client();
    $response = $http->delete('https://midominio.com/wp-json/wp/v2/users/7', 
        ['force' => true, 'reassign' => 1], 
        ['auth' => ['username' => 'miusuario', 'password' => 'mipassword']
    ]);
    $json = $response->getJson();
    debug($json);
    $estatusPeticion = $response->getStatusCode();
    if ($estatusPeticion < 300)
    { 
        echo('Usuario eliminado satisfactoriamente');
    }
    else
    {
        echo('Error al intentar eliminar el usuario. Código del error: ' . $estatusPeticion);
    }  
    
  • En la operación Delete se deben pasar en la variable $data los parámetros: 'force' => true y 'reassign' => idDelUsuarioAlCualSeLeAsignaranLosPostDelUsuarioQueSePretendeEliminar

Fuente: https://book.cakephp.org/3.0/en/core-libraries/httpclient.html

chevron_left
chevron_right

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Comentario
Nombre
Correo electrónico
Web