public function testErrorCallbacks() { $xmlrpcClient = new HieuLe\WordpressXmlrpcClient\WordpressClient(); $error = array(); $xmlrpcClient->onError(function ($e, $event) use(&$error) { $error['e'] = $e; $error['event'] = $event; }); try { $xmlrpcClient->getProfile(); } catch (Exception $ex) { $this->assertArrayHasKey('e', $error); $this->assertArrayHasKey('event', $error); $this->assertArrayHasKey('endpoint', $error['event']); return; } $xmlrpcClient->onError(function ($e, $event) use(&$error) { $error['e'] = 1; }); try { $xmlrpcClient->getProfile(); } catch (Exception $ex) { $this->assertSame(1, $error['e']); return; } $this->fail('Error callbacks not called'); }
<?php require __DIR__ . '/lib/autoload.php'; # Your Wordpress website is at: http://wp-website.com $endpoint = "http://beta.xudoanchuahienlinh.com/xmlrpc.php"; # The Monolog logger instance $wpLog = new Monolog\Logger('wp-xmlrpc'); # Create client instance $wpClient = new \HieuLe\WordpressXmlrpcClient\WordpressClient(); # Log error $wpClient->onError(function ($error, $event) use($wpLog) { var_dump($error); echo "<br><br>"; var_dump($event); $wpLog->addError($error, $event); }); # Set the credentials for the next requests $wpClient->setCredentials($endpoint, 'admin', '12345678@X'); $profile = $wpClient->getProfile(array('user_id', 'username', 'email', 'roles')); var_dump($profile); //foreach ($resp as $value) { echo "<br><br>"; echo $profile["user_id"]; echo "<br><br>"; echo "Username: "******"username"]; echo "<br><br>"; echo "Display name: " . $profile["email"]; echo "<br><br>"; // };