teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

修正

2019/08/25 11:25

投稿

no1knows
no1knows

スコア3365

title CHANGED
File without changes
body CHANGED
@@ -48,5 +48,6 @@
48
48
  http.request(req)
49
49
  }
50
50
  p res.code
51
- #コンソールに201が表示されれば投稿完了
51
+ #コンソールに201が表示されれば投稿完了
52
+ #p res.body で更新内容などが確認できる。
52
53
  ```

1

追記

2019/08/25 11:25

投稿

no1knows
no1knows

スコア3365

title CHANGED
File without changes
body CHANGED
@@ -19,4 +19,34 @@
19
19
 
20
20
 
21
21
  以上となります。
22
- どうぞよろしくおねがいします!
22
+ どうぞよろしくおねがいします!
23
+
24
+ ### 2019.08.25 追記(最終的に下記のように実装しました。)
25
+
26
+ phpで実行せずにHTTPリクエストで実装。
27
+
28
+
29
+ 【ワードプレス】
30
+ ・Application Passwordsプラグインを有効化。
31
+
32
+ ・プロフィールページのApplication Passwordsでエラーが出ている場合は、「.htaccess」に`RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]`を追記する必要があるかも
33
+
34
+ ・プロフィールページのApplication PasswordsでAdd Newを押してパスワードを生成・保存。
35
+
36
+ ```Ruby
37
+ #テストなのでindex.html.erbファイルにそのまま記載
38
+ uri = URI('https://your-domain.com/wp-json/wp/v2/posts')
39
+ req = Net::HTTP::Post.new(uri)
40
+ req.basic_auth('user_name', 'passward')
41
+ #user_nameは、Application Passwordsで追加したユーザー名ではなく、ワードプレスのユーザー名。
42
+
43
+ req.set_form_data({title: "Yey from rails", status: "publish", post_media: ['/uploads/rails.png']})
44
+ #Rubyなので必要に応じて変数を利用できる。
45
+ #post_mediaは試していないが、これであっているはず。
46
+
47
+ res = Net::HTTP.start(uri.host, uri.port, :use_ssl => uri.scheme == 'https') { |http|
48
+ http.request(req)
49
+ }
50
+ p res.code
51
+ #コンソールに201が表示されれば投稿完了
52
+ ```