vb.netからxmlrpcを使ってWordPressに記事を投稿する

概要

WordPressの xmlrpc.php を使ってvb.netから記事を投稿します。

環境

  • Windows 10 (64bit版)
  • Microsoft Visual Studio Community 2017

xml-rpc用のライブラリを取得

xml-rpc.netにアクセスして、 xml-rpc.net.2.5.0.zip を任意のフォルダにダウンロードして展開しておきます。

XML-RPC.Net - Downloads

image

Visual Studioにて、vb.net – コンソールアプリを作成し、参照を追加

image

さらに参照を押下し、展開したフォルダ内にある xmlRpcV2.dll を参照設定し、チェックを付けておく。

image

vb.netからWordPressに投稿するサンプルプログラム

Module1.vb に以下のコードを貼り付ける。

[vb]
Imports CookComputing.XmlRpc

Public Interface WeblogRpcCategory
<CookComputing.XmlRpc.XmlRpcMethod("metaWeblog.newPost")>
Function NewPage(ByVal id As Integer,
ByVal user As String,
ByVal pass As String,
ByVal content As strContents,
ByVal publish As Integer) As String
End Interface

Public Structure strContents
Public title As String
Public description As String
End Structure

Module Module1

Class WpXmlRpc

Public id = 1
Public user As String = ""
Public pass As String = ""
Public xmlrpcURL As String = ""

Public Function newPost(ByVal title As String,
ByVal post As String,
ByVal publish As Integer) As String

Dim categories As WeblogRpcCategory = CType(XmlRpcProxyGen.Create(GetType(WeblogRpcCategory)), WeblogRpcCategory)
Dim RPCServer As XmlRpcClientProtocol = CType(categories, XmlRpcClientProtocol)
Dim ContentsArray As strContents = Nothing
Dim result As String = ""

RPCServer.Url = xmlrpcURL

ContentsArray.title = title
ContentsArray.description = post

Try
Return categories.NewPage(1, user, pass, ContentsArray, publish).ToString
Catch ex As Exception
Return ex.Message
End Try
End Function
End Class

Sub Main()
‘Dim wp As New clsXmlRpc

With New WpXmlRpc

.id = 1
.user = "ここにユーザー名を記述"
.pass = "ここにパスワードを記述"
.xmlrpcURL = "https://localhost.net/xmlrpc.php"

.newPost("今日は多治見より1度も涼しかったです",
"それでも39度もあるわけですが・・・" & vbCrLf & "><。", 1)
End With

End Sub
End Module
[/vb]

コメント

タイトルとURLをコピーしました