JavaからWordPressに記事を投稿する
以前、PHPからWordPressに投稿すると内容の記事を作成しました。
今回はJavaを使って、同じように通信してみたいと思います。
早速ですが、必須ライブラリは以下からダウンロードできます。
公式サイトのリンクが切れていて大変苦労しました。
http://central.maven.org/maven2/org/apache/xmlrpc/xmlrpc-client/3.1.3/xmlrpc-client-3.1.3.jar
http://central.maven.org/maven2/org/apache/xmlrpc/xmlrpc-common/3.1.3/xmlrpc-common-3.1.3.jar
http://central.maven.org/maven2/org/apache/ws/commons/util/ws-commons-util/1.0.2/ws-commons-util-1.0.2.jar
プログラムはPHP版と同じように作成します。
package xmlrpc; import java.net.URL; import java.util.Hashtable; import org.apache.xmlrpc.client.XmlRpcClient; import org.apache.xmlrpc.client.XmlRpcClientConfigImpl; /** * WordPressに記事を登録 * @author admin * */ public class XmlRpcTest { public static void main(String[] args) throws Exception { try { XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl(); config.setServerURL(new URL("http://black-kigyo.tk/xmlrpc.php")); XmlRpcClient client = new XmlRpcClient(); client.setConfig(config); Hashtable<Object,Object> hash = new Hashtable<Object,Object>(); hash.put("post_title", "Javaってる");// 記事のタイトル hash.put("post_content", "Javaから投稿する");// 本文 hash.put("post_author", "1"); // 本文中の改行をbrタグで反映 hash.put("post_status", "publish"); // コメントを受け付けるか Object[] params = new Object[4]; params[0] = 1; // blogId params[1] = "ユーザ名を指定してください"; params[2] = "パスワードを指定してください"; params[3] = hash; Object result = client.execute("wp.newPost", params); System.out.println("main::Post 記事番号:" + result + "です。"); } catch(Exception e) { System.out.println("main::Post 記事投稿で失敗"); System.out.println(e.getMessage()); } } }
まとめ
とても簡単に記事を投稿することができました。
これで、サイトを増やすときも、半自動的に記事を作成することができて、とても便利です。