- 전체
- JAVA 일반
- JAVA 수학
- JAVA 그래픽
- JAVA 자료구조
- JAVA 인공지능
- JAVA 인터넷
- Java Framework
- Java GUI (AWT,SWING,SWT,JFACE)
- SWT and RCP (web RAP/RWT)[eclipse], EMF
JAVA 인터넷 Create New Posts in Wordpress using Java and XMLRpc
2016.11.14 19:41
Create New Posts in Wordpress using Java and XMLRpc
import org.apache.xmlrpc.XmlRpcException; import org.apache.xmlrpc.client.XmlRpcClient; import org.apache.xmlrpc.client.XmlRpcClientConfigImpl; @SuppressWarnings({ "unchecked", "rawtypes" }) @Override /** * Create New Posts in Wordpress using Java * * //http://codex.wordpress.org/XML-RPC_WordPress_API/Posts#wp.newPost * //http://codex.wordpress.org/Function_Reference/wp_insert_post */ public void publishToWordpress(Item item) throws Exception { try { XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl(); config.setBasicPassword("your_password"); config.setBasicUserName("your_user"); config.setEnabledForExtensions(true); config.setEnabledForExceptions(true); XmlRpcClient client = new XmlRpcClient(); client.setConfig(config); Hashtable post = new Hashtable(); post.put("post_title", item.getTitle()); post.put("post_content", item.getDescription()); post.put("post_status", "publish"); post.put("post_date", item.getPubDate()); post.put("comment_status", "open"); post.put("ping_status", "open"); Hashtable taxonomies = new Hashtable(); List<String> categories = new ArrayList<String>(); Set<ItemTheme> themes = item.getItemThemes(); for (Iterator iterator = themes.iterator(); iterator.hasNext();) { ItemTheme itemTheme = (ItemTheme) iterator.next(); Theme theme = itemTheme.getTheme(); categories.add(theme.getTitle()); } //custom taxonomies... List<String> tags = new ArrayList<String>(); List<String> persons = new ArrayList<String>(); List<String> places = new ArrayList<String>(); List<String> events = new ArrayList<String>(); List<String> organizations = new ArrayList<String>(); List<String> source = new ArrayList<String>(); //..add keywords to your taxonomies... for (Iterator iterator = themes.iterator(); iterator.hasNext();) { String theme = (String) iterator.next(); categories.add(theme); } taxonomies.put("category", categories); taxonomies.put("post_tag", tags); taxonomies.put("person", persons); taxonomies.put("place", places); taxonomies.put("event", events); taxonomies.put("organization", organizations); //custom fields.... List<Hashtable> customFieldsList = new ArrayList<Hashtable>(); Hashtable customFields = new Hashtable(); customFields.put("key", "url"); customFields.put("value", myLink); customFieldsList.add(customFields); customFields = new Hashtable(); customFields.put("key", "twitter_image"); customFields.put("value", linkImage); customFieldsList.add(customFields); post.put("custom_fields", customFieldsList); post.put("terms_names", taxonomies); Vector params = new Vector(); params.addElement(new Integer(0)); params.addElement(Constants.WORDPRESS_USER); params.addElement(Constants.WORDPRESS_PWD); //create a new post... if(isNew){ params.addElement(post); log.debug("inserting post..."); //log.debug("params:" + params); String postId = (String) client.execute("wp.newPost", params); }else{ //EDIT an existing post params.addElement("postId"); params.addElement(post); client.execute("wp.editPost", params); } }catch (XmlRpcException e){ log.error(e.getMessage(), e); } } |
[출처] https://gist.github.com/dersteppenwolf/4136298
본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.