Ruby,WordPress:阅读最新帖子

时间:2012-09-07 22:59:20

标签: ruby wordpress

阅读完WordPress文档并做了一些研究后,似乎有关如何获取WordPress网站上最后10篇帖子的建议,就是要做以下事情:

require 'xmlrpc/client'
#initialize a connection
connection = XMLRPC::Client.new2('http://www.mywordpresssite.com')
result = connection.call('metaWeblog.getRecentPosts', 1,'admin','123456')
#or it seems that I can also call:
result = connection.call('wp.getPages', 1,'admin','123456',10)

在连接呼叫之后,我得到了一个合理的结果:

 => #<XMLRPC::Client:0x007fdfec50cac0 @http_header_extra=nil, @http_last_response=nil, @cookie=nil, @host="www.mywordpresssite.com", @path="/RPC2", @proxy_host=nil, @proxy_port=nil, @use_ssl=false, @timeout=30, @port=80, @password=nil, @user=nil, @auth=nil, @http=#<Net::HTTP www.mywordpresssite.com:80 open=false>, @parser=nil, @create=nil> 

但是当我这样做时:

result = connection.call('wp.getPages', 1,'admin','123456',10)

result = connection.call('metaWeblog.getRecentPosts', 1,'admin','123456')

我明白了:

SocketError:getaddrinfo:提供了nodename或servname,或者未知

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

实际上,当我尝试使用xmlrpc / client从我的Sinatra应用程序发布时,我遇到了同样的错误消息。

有趣的是,当我使用从IRB发布的相同方式时,我可以成功发布到我的博客。

我发现似乎xmlrpc并不喜欢这个协议。我删除了

      http:// 

从链接,它没有顺利。试一试,也许有帮助。