【问题标题】:Using xmlRPC calls in my Wordpress Plugin PHP + Avoid Curl / use HTTP API?在我的 Wordpress 插件 PHP + 避免卷曲/使用 HTTP API 中使用 xmlRPC 调用?
【发布时间】:2014-10-21 07:52:35
【问题描述】:

好的,所以我目前有代码工作,我需要用它创建一个 wordpress 插件。

目前我的代码包括 XMLRPC 2.2.2,如下所示...

   include("xmlrpc-2.2.2/lib/xmlrpc.inc");

   $sock = new xmlrpc_client($server_url.'common');
   $msg = new xmlrpcmsg('login');
   $msg->addParam(new xmlrpcval($dbname, "string"));
   $msg->addParam(new xmlrpcval($user, "string"));
   $msg->addParam(new xmlrpcval($password, "string"));
   $resp =  $sock->send($msg);

我想利用 HTTP API,这样我就不会依赖拥有 curl 的用户...

我的问题是我可以使用它吗?我是否只需要编辑当前的 xmlrpc 库才能使用 wordpress HTTP API 还是已经完成了?

期待您的回复!!

【问题讨论】:

    标签: php wordpress curl xml-rpc


    【解决方案1】:

    WordPress 包含一个XML-RPC class (IXR),这是一个问题

    include 'wp-includes/class-IXR.php'; // better with:  ABSPATH . WPINC . '/class-IXR.php';
    $client = new IXR_Client( 'http://example.com/xmlrpc.php' );
    if( !$client->query( 'demo.sayHello', array() ) )
        echo $client->getErrorMessage();
    else
        echo $client->getResponse();
    

    对于经过身份验证的请求:

    $query_args = array(  
        'post_status' => 'publish',
        'post_type'   => 'post',
        'number'      => 3
    );
    $args = array(
        '', // blog_id
        'username',
        'password',
        $query_args
    );        
    $result = $client->query( 'wp.getPosts', $args );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-25
      • 2011-06-29
      • 1970-01-01
      • 2019-06-08
      相关资源
      最近更新 更多