Я делаю настольное приложение на Java, которое делает записи в Wordpress через вызовы API для перевода сообщений со старого HTML-сайта на новый. У меня есть этот фрагмент кода, который делает сообщения и работает нормально:
public void create(Post post){
try {
URL url = new URL(Constants.URL_POST);
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestMethod("POST");
urlConnection.setRequestProperty("Authorization", "Bearer " + Constants.BEARER_TOKEN);
urlConnection.setDoOutput(true);
PrintWriter wr = new PrintWriter(urlConnection.getOutputStream());
wr.append(createPost(post));
wr.flush();
urlConnection.connect();
InputStream is = urlConnection.getInputStream();
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
StringBuilder response = new StringBuilder();
String line;
while ((line = rd.readLine()) != null) {
response.append(line);
response.append('\r');
}
rd.close();
System.out.println(response.toString());
} catch (Exception e) {
e.printStackTrace();
}
}
private String createPost (Post post){
s.append("?");
s.append("&title=").append(post.getTitle());
s.append("&content=").append(post.getContent());
s.append("&date=").append(post.getDate());
s.append("&modified=").append(post.getDate());
s.append("&categories=").append(post.getCategory());
s.append("&status=").append("publish");
return s.toString();
}
К некоторым сообщениям прикреплены медиа-файлы, и я прочитал это, чтобы прикрепить медиа-файлы в Wordpress, я должен сначала создать сообщение, а затемприкрепите его, поэтому мне нужно сохранить идентификатор записи, который Wordpress назначает моей записи, и сохранить его с post.setId()
, чтобы получить его позже. Как я могу это сделать?
Это вывод в формате JSON (украшенный), который я получаю из этого:
{
"id": 252,
"date": "2013-07-10T00:00:00",
"date_gmt": "2013-07-10T00:00:00",
"guid": {
"rendered": "http://localhost/tesi/2013/07/10/test",
"raw": "http://localhost/tesi/2013/07/10/test"
},
"modified": "2013-07-10T00:00:00",
"modified_gmt": "2013-07-10T00:00:00",
"password": "",
"slug": "nulla-osta-n-62-2013-richiesta-autorizzazione-per-un-progetto-di-monitoraggio-ambientale-dellarea-del-centro-olio-val-dagri-pz-2test",
"status": "publish",
"type": "post",
"link": "http://localhost/tesi/2013/07/10/test/",
"title": {
"raw": "Test",
"rendered": "Test"
},
"content": {
"raw": "lorem ipsum",
"rendered": "lorem ipsum",
"protected": false,
"block_version": 0
},
"excerpt": {
"raw": "",
"rendered": "lorem ipsum",
"protected": false
},
"author": 1,
"featured_media": 0,
"comment_status": "open",
"ping_status": "open",
"sticky": false,
"template": "",
"format": "standard",
"meta": [],
"categories": [
4
],
"tags": [],
"permalink_template": "http://localhost/tesi/2013/07/10/%postname%/",
"generated_slug": "test",
"_links": {
"self": [
{
"href": "http://localhost/tesi/wp-json/wp/v2/posts/252"
}
],
"collection": [
{
"href": "http://localhost/tesi/wp-json/wp/v2/posts"
}
],
"about": [
{
"href": "http://localhost/tesi/wp-json/wp/v2/types/post"
}
],
"author": [
{
"embeddable": true,
"href": "http://localhost/tesi/wp-json/wp/v2/users/1"
}
],
"replies": [
{
"embeddable": true,
"href": "http://localhost/tesi/wp-json/wp/v2/comments?post=252"
}
],
"version-history": [
{
"count": 0,
"href": "http://localhost/tesi/wp-json/wp/v2/posts/252/revisions"
}
],
"wp:attachment": [
{
"href": "http://localhost/tesi/wp-json/wp/v2/media?parent=252"
}
],
"wp:term": [
{
"taxonomy": "category",
"embeddable": true,
"href": "http://localhost/tesi/wp-json/wp/v2/categories?post=252"
},
{
"taxonomy": "post_tag",
"embeddable": true,
"href": "http://localhost/tesi/wp-json/wp/v2/tags?post=252"
}
],
"wp:action-publish": [
{
"href": "http://localhost/tesi/wp-json/wp/v2/posts/252"
}
],
"wp:action-unfiltered-html": [
{
"href": "http://localhost/tesi/wp-json/wp/v2/posts/252"
}
],
"wp:action-sticky": [
{
"href": "http://localhost/tesi/wp-json/wp/v2/posts/252"
}
],
"wp:action-assign-author": [
{
"href": "http://localhost/tesi/wp-json/wp/v2/posts/252"
}
],
"wp:action-create-categories": [
{
"href": "http://localhost/tesi/wp-json/wp/v2/posts/252"
}
],
"wp:action-assign-categories": [
{
"href": "http://localhost/tesi/wp-json/wp/v2/posts/252"
}
],
"wp:action-create-tags": [
{
"href": "http://localhost/tesi/wp-json/wp/v2/posts/252"
}
],
"wp:action-assign-tags": [
{
"href": "http://localhost/tesi/wp-json/wp/v2/posts/252"
}
],
"curies": [
{
"name": "wp",
"href": "https://api.w.org/{rel}",
"templated": true
}
]
}
}