Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
カスタムフィールド製造業からの脱却 〜オリジナルブロックエディタからGutenbergへ〜
Search
Shizumi Yoshiaki
March 26, 2019
Technology
3
1.2k
カスタムフィールド製造業からの脱却 〜オリジナルブロックエディタからGutenbergへ〜
2019年3月27日に開催されたWP Zoom UP #13で発表したミニセッションのスライドです。
Shizumi Yoshiaki
March 26, 2019
Tweet
Share
More Decks by Shizumi Yoshiaki
See All by Shizumi Yoshiaki
今日から始めるfunctions.phpカスタマイズ入門
shizumi
0
380
こんなこともできるWP-CLI 〜0から触ってみよう!〜
shizumi
4
650
カスタムフィールド製造業からの脱却 〜ブロックエディター(Gutenberg)をカスタムする方法〜
shizumi
0
2.2k
Other Decks in Technology
See All in Technology
地理空間データ可視化・解析・活用ソリューション Pacific Spatial Solutions (PSS)
pacificspatialsolutions
0
330
Tellus の衛星データを見てみよう #mf_fukuoka
kongmingstrap
0
270
LayerXにおけるLLMプロダクト開発の今までとこれから
layerx
PRO
4
700
Building Dashboards as a Hobby
egmc
0
370
IaCジェネレーターとBedrockで詳細設計書を生成してみた
tsukasa_ishimaru
4
890
Cloud Service Mesh に触れ合う
phaya72
1
220
Além do else! Categorizando Pokemóns com Pattern Matching no JavaScript
wmsbill
0
710
Improve Your Development Workflow with Gemini Code Assist
meteatamel
0
130
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
5
18k
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
1k
Next.js に疲れた私は Vue3 に癒やされた
akagire
0
140
LLM開発・活用の舞台裏@2024.04.25
yushin_n
3
1.2k
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.2k
Designing for Performance
lara
601
67k
What the flash - Photography Introduction
edds
64
11k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
41
4.4k
Code Review Best Practice
trishagee
56
15k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
188
16k
Making the Leap to Tech Lead
cromwellryan
125
8.5k
Agile that works and the tools we love
rasmusluckow
325
20k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
22
1.6k
GraphQLとの向き合い方2022年版
quramy
33
12k
Writing Fast Ruby
sferik
622
60k
Transcript
ΧελϜϑΟʔϧυۀ͔Βͷ٫ ΦϦδφϧϒϩοΫΤσΟλ͔ΒGutenberg ੩ւ ٛ໌ʢͣ͠Έʣ 2019-03-26
ࣗݾհ 1990ʢฏ2ʣੜ·Ε ઐֶߍଔۀޙ ྲྀ௨ؔͷϓϩάϥϚʹ ݁ࠗΛظʹୀ৬ ಠཱͯ͠Webۀքʹ ݱࡏ גࣜձࣾαϯφφ ͷऔక ͍ͬͯ·͢
ߍͷඇৗۈߨࢣ͍ͬͯ·͢ Twitter : @Shizumi0705 ൃදऀۙӨʢ̑લʣ
͜Ε·Ͱೲ͖ͯͨ͠ฤूը໘ɹ
͜Ε·Ͱೲ͖ͯͨ͠ฤूը໘
͜Ε·Ͱೲ͖ͯͨ͠ฤूը໘ ίϯςϯπͷछྨΛબ छྨʹ߹Θͤͨ༰Λొ
ACFΛۦͯ͠࡞ͬͨ ΦϦδφϧͷϒϩοΫΤσΟλ
͍Ζ͍Ζͳ͕…
͍Ζ͍Ζͳ͕… ɾ ΧελϜϑΟʔϧυʹͯ͢ొ͞ΕΔͨΊɺجຊతʹݕࡧʹֻ͔Βͳ͍ɻ ɾ ΧελϜϑΟʔϧυݕࡧରʹ͢ΕΑ͍͕ɺݕࡧʹ͕͔͔࣌ؒΔɻ ɾ ૢ࡞ϛεͰผςʔϚʹมߋ͞ΕΔͱɺ༰͕Կදࣔ͞Εͳ͍ɻ ɾ ผςʔϚΛೖΕͳ͍Α͏ʹ͍ͯ͠·͕ͨ͠ɺೲޙͷ୲ऀ͕͍Ζ͍Ζ৮ͬͨΓ…
هࣄอଘ࣌ʹग़ྗ༰Λ post_contentʹॻ͖ࠐΉॲཧΛ Ճ͍ͯ͠·͢ɻ
Gutenbergͷొ
Gutenbergͷొ
͜Εͬͯࠓ·Ͱ࡞ͬͯͨͷʹ͍ۙʂʂ
͡Ό͋࡞Γม͑ͪΌ͑ྑ͍͡ΌΜʂʂʂ
…ͱ͍͏͜ͱͰࠓ Gutenbergʹ߹Θͤͨ ઃܭͷΓ͠Λ͍ͯ͠·͢
ຊͦͷ࡞ۀͷߟ͑ํʹ͍ͭͯͷ͓Ͱ͢
ࣗ͝ͰGutenbergΛΧελϜ͢Δͱ͖ͷ ߟ͑ํͷҰྫͱͯ͠ޚཡ͍ͩ͘͞
ݟग़͠ཁૉ
͜Ε·Ͱ ɾ ݟग़͠ཁૉͷେ͖ܾ͞ఆ ɾ ը૾ʹ͢Δ͔ͷબʢσβΠϯʹґΔʣ
Gutenberg ɾ େ͖͞ϨΠΞτͷબͰରԠ ɾ ը૾ˠΠϯϥΠϯը૾ͷ༻
ׂίϯςϯπ
͜Ε·Ͱ ɾ ࠨӈʹԿΛஔ͢Δ͔Λࡉ͔͘બ ɾ ՃͰ͖Δ༰Λݸผʹ࠶ઃఆ͢Δඞ ཁ͕͋Δ
Gutenberg ɾ ΧϥϜϒϩοΫΛ͑ղܾ ɾ ొ༰ͷ࠶ઃఆෆཁ
ͱɺ͜͜·Ͱ ඪ४Ͱ༻ҙ͞Ε͍ͯΔͷΛ༻͍ͯ͠·͢
͍Ζ͍Ζͱ४උ͞Ε͍ͯΔͷͰศརͰ͢
ͨͩ͠… ग़ྗʹ͍ͭͯௐΛ͢Δඞཁ͕͋Γ·͢
௨ৗͷग़ྗ <h2>test</h2>
͜͏͍ͨ͠ <div class="grid_10 prefix_1 suffix_1”> <h2>test</h2> </div>
ϒϩοΫϑΟϧλͷ blocks.getSaveElement Λ༻͢Δ͜ͱͰɺ อଘܗࣜΛॻ͖͑Δ͜ͱ͕Ͱ͖·͢ɻ
https://wordpress.org/gutenberg/handbook/designers-developers/developers/filters/block-filters/ ৄ͘͠ Gutenberg Handbook ͷ Block Filters Λ ޚཡ͍ͩ͘͞
ඪ४Ͱ༻ҙ͞Ε͍ͯΔ͚Ͳɺ ઃఆ߲͕Γͳ͍ͱ͖ʁ
Block Filters Λۦ͢Δ͜ͱͰରԠͰ͖·͢ɻ ɾblocks.registerBlockType ɾeditor.BlockEdit ɾblocks.getSaveContent.extraProps
શ͘৽͍͠ϒϩοΫΛ࡞Γ͍ͨ
͓͍߹Θͤઌใ ͜Μͳͷ
͜Ε·Ͱ ɾ ܾ·ͬͨ༰Λॱ൪ʹొ͍ͯ͘͠ ɾ ొ࣌ͷݟ͑ํͱαΠτ্Ͱͷݟ͑ํ ҟͳΔ
Gutenberg ɾ ෳݸͷೖྗཝ͕ଘࡏ͢Δͷ࡞Ͱ͖Δ ɾ ߘը໘ͰͷݟͨCSSΛؤுΕ΄΅ಉ༷ʹ࡞Մೳ
ΧελϜϒϩοΫͷՃํ๏ʁ
registerBlockTypeΛ༻͠·͢
HandbookʹΧελϜϒϩοΫͷ Ճͷํ๏νϡʔτϦΞϧͰࡌͬͯ·͢ʂ
ͪΒͬͱGoogleϚοϓͷݕࡧݟ͚͑ͨͲ…
GoogleϚοϓͷݕࡧ
ਖ਼Ұ൪ઃܭ͢Δ্Ͱհͩͳ͊ͱ ࢥ͍ͬͯ·͢
PlaceSearchAPI͋ΔͷͰ ࡞Δ͜ͱՄೳͰ͢
ΫϥΠΞϯτ͝ͱʹAPIΩʔͷઃఆ͕ඞཁͳͷͰ ͦͷลΓผ్ը໘͕ඞཁʹͳΓͦ͏
Gutenberg͔ΒΕΔͷͰਂೖΓ͠·ͤΜ
ొ͑͞Ͱ͖Ε දࣔʹؔͯ͜͠Ε·Ͱಉ༷ʹͰ͖Δͣ
දࣔ༻ͷJS1͔͠ ग़ྗ͠ͳ͍ͱ͍͏෦
ηογϣϯ·ͰʹௐΑ͏ͱࢥ͍ͬͯ·͕ͨ͠ ؒʹ߹͍·ͤΜͰͨ͠ ͝ΊΜͳ͍͞
࣍ୈͰରԠͰ͖ΔͣͰ͢ʂ
ͱɺ͜Μͳײ͡ͰΰϦΰϦઃܭΛਐΊ͍ͯ·͢ɻ
ਖ਼ࢲ·ͩ·ͩษڧதͰ͢
࡞Γํʹ͍ͭͯઌਓୡ͕͍Βͬ͠ΌΔͷͰ ͦͷํͨͪͷใΛ ࢀߟʹ͍͖ͤͯͨͩ͞·͠ΐ͏
Gutenberg HandbookಡΜͰΈ·͠ΐ͏ mimi͞Μ͕ઌఔհ͞Ε·ͨ͠Ͷ
ӳޠා͘ͳ͍Α ֶੜͨͪʹ͍ͭݴ͏ݴ༿Ͱ͢ ࢲۤखͰ͢
ηογϣϯΛ࡞Δʹ͋ͨΓ ͍Ζ͍ΖͬͯΈ·͕ͨ͠
ௐ࢝ΊΔͱͪΐͬͱͦ͠͏ͳͷͰ͕͢ ҊͣΔΑΓ࢈Ή͕қ͠
࡞Γ͍ͨͷΛΏͬ͘Γਫ਼ࠪͯ͠ཧ͢Δ͜ͱ ͦͯ͠ɺઃܭΛ͔ͬ͠Γ͢Δ͜ͱ
Ͱཱͪࢭ·Γ͗ͣ͢ʹखಈ͔ͯ͠ΈΔ͜ͱ
खΛಈ͔͢ͷָ͍ͬͯ͠Ͱ͢ΑͶʂ
ࢲઃܭ͕Ұ൪ۤखͰ͢
ͦͯ͠…
࣮·ͩΛͦΉ͚͍ͯΔ͕͋Γ·͢
͜Ε·ͰͷΧελϜϑΟʔϧυͷ༰ post_metaʹઃఆ͞Ε͍ͯ·͢
ਖ਼ࣜʹҠߦ͢ΔͷͰ͋Ε ͜Είϯόʔτ͠ͳ͚ΕͳΓ·ͤΜ
͜ͷลͷରॲͱ͔օ͞Μʹฉ͍ͯΈ͍ͨ͜ͱ͕ ͨ͘͞Μ͋Γ·͢ʂ
ͥͻ͜ͷ͋ͱͷ࠙ձͰ օ͞Μͱใަ͍ͤͯͩ͘͞͞ʂ
ݟ͍͖ͯͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ
Any Questions?