Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Node.js + WP-API でつくるウェブアプリケーション
Takayuki Miyauchi
August 27, 2016
Programming
2
790
Node.js + WP-API でつくるウェブアプリケーション
2016/08/27に大阪イノベーションハブで開催されたGRAND FRONTEND OSAKA 2016の資料です。
Takayuki Miyauchi
August 27, 2016
Tweet
Share
More Decks by Takayuki Miyauchi
See All by Takayuki Miyauchi
ベクトルタイルで見えてきたデジタル地図の未来
miya0001
0
160
不動産IDの仕組みと今後の課題
miya0001
0
210
オープンソースでつくるオープンソースっぽい地図の会社の挑戦
miya0001
0
220
ITエンジニアのための住所システムのお話
miya0001
0
46
TileCloudの裏側
miya0001
0
230
地方の子供たちを宇宙へ! きのくにICT教育
miya0001
1
180
ホスティングの立場からのWordPressへの貢献と協力
miya0001
0
680
ウェブサイトをもっと速く!
miya0001
7
550
WP-API攻略
miya0001
5
4.5k
Other Decks in Programming
See All in Programming
レガシーフレームワークからの移行
ug
0
100
Excelの助けを借りて楽にシナリオを作ろう
rpa_niiyama
0
210
様々なWebアプリをAzureにデプロイする
tomokusaba
0
110
Hono v3 - Do Everything, Run Anywhere, But Small, And Faster
yusukebe
4
130
フロントエンドで学んだことをデータ分析で使ってみた話
daichi_igarashi
0
170
TypeScript 4.9のas const satisfiesが便利
tonkotsuboy_com
9
2.2k
How to Fight Production Incidents?
asatarin
0
160
新卒でサービス立ち上げから Hasuraを使って3年経った振り返り
yutorin
0
210
Hasura の Relationship と権限管理
karszawa
0
160
社会人 20 年目エンジニア、発信で技術学びなおしてる話
e99h2121
1
140
Gradle build: The time is now
nonews
1
390
Cloudflare Workersと状態管理
chimame
2
470
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
39
7.8k
Fashionably flexible responsive web design (full day workshop)
malarkey
396
63k
Why Our Code Smells
bkeepers
PRO
326
55k
Designing for humans not robots
tammielis
245
24k
What’s in a name? Adding method to the madness
productmarketing
12
1.9k
Building Better People: How to give real-time feedback that sticks.
wjessup
346
17k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
101
6.2k
How STYLIGHT went responsive
nonsquared
89
4.2k
Happy Clients
brianwarren
90
5.8k
BBQ
matthewcrist
75
8.1k
Build your cross-platform service in a week with App Engine
jlugia
221
17k
Done Done
chrislema
178
14k
Transcript
/PEFKT 81"1*Ͱͭ͘Δ ΣϒΞϓϦέʔγϣϯ (3"/%'30/5&/%04"," !NJZB
ࣗݾհ
http://vccw.cc/
None
None
81"1*ͱʁ
w 8PSE1SFTT͔Β࣮͞Εͨ৽ػೳ w 8PSE1SFTTΛ+40/3&45"1*Ͱ͝ʹΐ͝ʹΐɻ $ curl http://wp-api.dev/wp-json/wp/v2/posts | jq .
[ { "id": 1, "date": "2016-05-17T07:28:32", "date_gmt": "2016-05-17T07:28:32", "guid": { "rendered": "http://wp-api.dev/?p=1" }, "modified": "2016-05-17T07:28:32", "modified_gmt": "2016-05-17T07:28:32", "slug": "hello-world", "type": "post",
w ݱ࣌ͰϑϧػೳΛ͏ʹ81"1*ϓϥάΠϯΛΠ ϯετʔϧ͢Δඞཁ͕͋Δɻ w 8PSE1SFTTͰίΞʹϚʔδ͞ΕΔ༧ఆɻ https://wordpress.org/plugins/rest-api/
8PSE1SFTTͷ৽ػೳࣄલʹϓϥάΠϯͱͯ͠ϦϦʔε͞Εɺ 4MBDL(JU)VCͰͷٞΛܦͯίΞʹϚʔδ͞Ε·͢ɻ https://make.wordpress.org/core/features-as-plugins/
https://github.com/WP-API
w ਖ਼౷3&45GVMͳ"1*ɻ w ϓϥάΠϯʹΑΓ֦ுՄೳɻͨͱ͑ϝλσʔ λΛ+40/ʹՃͨ͠Γͱ͔ɻ w औಘ͍ͨ͠هࣄͷύϥϝʔλΛΫΤϦʔจࣈྻ Ͱࢦఆ͢Δ͜ͱ͕Մೳɻ
/wp-json/wp/v2/posts ߘͷҰཡΛऔಘ *%͕ͷݻఆϖʔδΛऔಘ /wp-json/wp/v2/pages/234 /wp-json/wp/v2/:object/:id
?filter[s]=hello IFMMPؚ͕·ΕΔهࣄΛऔಘ ΧςΰϦʔ͕GSVJUTͷهࣄΛऔಘ ?filter[category]=fruits https://codex.wordpress.org/Class_Reference/WP_Query 8PSE1SFTTͷ
[email protected]
ͷύϥϝʔλ͕༻Մ
81"1*ʹΑΔมԽ
8PSE1SFTTͷςʔϚγεςϜ͔Β ϑϩϯτΤϯυΛղ์ w εϚϗΞϓϦɺσεΫτοϓΞϓϦͳͲͷόοΫΤϯυ ͱͯ͠ͷ8PSE1SFTT
ϚΠΫϩαʔϏεͷҰ෦ͱͯ͠ͷ 8PSE1SFTT w ଞͷ$.4ϑϨʔϜϫʔΫͱͷ༰қͳ࿈ܞ͕Մೳɻ Lambda API Gateway
ຊ൪ͰεςʔδϯάͰ ϥΠϒσʔλ w ͩͬͯ"1*ͩΜɻ w ϚΠάϨʔγϣϯແ͠Ͱ։ൃΛ࢝ΊΔ͜ͱՄೳɻ
εέʔϦϯά ͳʹͦΕʁ w ͱʹ͔͘Ωϟογϡͪ͠Ό͑ʂ w "84ͷ$MPVE'SPOU"1*(BUFXBZศརɻ CloudFront CDN
ϫʔΫϑϩʔͷվળ w όοΫΤϯυͱϑϩϯτΤϯυͷશͳۀɻ w ϑϩϯτΤϯυσΟϕϩούʔόοΫΤϯυ͕ 8PSE1SFTTͰ͋Δ͜ͱΛΔඞཁ͑͞ͳ͍͔ɻ
ࣄྫ
None
w όοΫΤϯυ8PSE1SFTTʴ81"1* w ϑϩϯτΤϯυɺ/PEFKT 3FBDUɻ w ϑϩϯτΤϯυͷΠϯϑϥʹ%PDLFSΛ༻ɻ w 044Ͱެ։͞Ε͍ͯ·͢ɻ
None
w 81"1*͔Βऔಘͨ͠σʔλΛ/PEFKTαʔόʔܦ༝ Ͱग़ྗ͢Δ͜ͱͰɺඇಉظॲཧʹΑΔߴԽΛ࣮ݱɻ w /PEFKTαʔόʔଆͰϨεϙϯε͕Ωϟογϡ͞Εͯ ͓Γ8PSE1SFTT͕μϯͯ͠αΠτՔಇɻ w 8PSE1SFTTͷཧը໘Λ͏͜ͱͰɺίϯςϯπϥ ΠλʔͷֶशίετΛݮɻ
None
w ଞͷ$.4͔Β8PSE1SFTTʹҠߦɻ w ಠ࣮ࣗͷϓϥάΠϯΛ։ൃͯ͠"1*Խɻ w όοΫΤϯυͷ։ൃνʔϜϑϩϯτΤϯυʹ΄ͱ ΜͲؔ༩͓ͯ͠ΒͣɺҠߦίετΛݮ͢Δ͜ͱʹ େ͖͘ߩݙɻ
ͦͷଞͷࣄྫ w 5IF/FX:PSL5JNFT w 8JSFE w )BQQZUBCMFT w /PNBEPCBTF
ࠓͷϋϯζΦϯͷ αϯϓϧ
• https://github.com/wckansai2016/node-wp-api • https://github.com/miya0001/ionic-starter- wordpress