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
コードが書ける人のためのブロックエディタのとっかかり
Search
Masahiko Kawai
May 20, 2026
Programming
53
0
Share
コードが書ける人のためのブロックエディタのとっかかり
Tokyo WordPress Meetup 2026年5月
Masahiko Kawai
May 20, 2026
More Decks by Masahiko Kawai
See All by Masahiko Kawai
触れるけど壊れないWordPressの作り方
masakawai
0
1.8k
リンクをお金で買ってみた ~ブラックハットSEO ダメ! ゼッタイ!~
masakawai
0
2.7k
黒い画面の苦手なデザイナーに捧げるDreamweaverだけで行うWordPressテーマ制作
masakawai
0
19k
Other Decks in Programming
See All in Programming
関係性から理解する"同一性"の型用語たち
pvcresin
1
190
20260514 - build with ai 2026 - build LINE Bot with Gemini CLI
line_developers_tw
PRO
0
450
GoogleCloudとterraform完全に理解した
terisuke
1
200
Agentic UI in the Frontend: Architectures with Open Standards @JAX 2026 in Mainz
manfredsteyer
PRO
0
120
Skillは並べた。動かなかった。契約で繋いだ。— 65個のSkillから、自走する開発サイクルへ
junholee
0
620
いつか誰かが、と思っていた フロントエンド刷新5年間の実践知
kiichisugihara
1
280
PHPer、Cloudflare に引っ越す
suguruooki
2
220
GitHubCopilotCLIをはじめよう.pdf
htkym
0
330
検索設計から 推論設計への重心移動と Recall-First Retrieval
po3rin
5
1.7k
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
1
180
Kubernetesを使わない環境にもCloud Nativeなデプロイを実現する / Enabling Cloud Native deployments without the complexity of Kubernetes
linyows
3
410
20年以上続くプロダクトでも使い続けられる静的解析ツールを求めて
matsuo_atsushi
0
150
Featured
See All Featured
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
310
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
My Coaching Mixtape
mlcsv
0
130
Speed Design
sergeychernyshev
33
1.7k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
330
Designing for Performance
lara
611
70k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
510
BBQ
matthewcrist
89
10k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
250
The Pragmatic Product Professional
lauravandoore
37
7.3k
The Curious Case for Waylosing
cassininazir
1
350
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
コードが書ける人のための ブロックエディタのとっかかり Tokyo WordPress Meetup 2026 5݄20 Ҫণ
1 自己紹介 ɹҪণʢ͔Θ͍·͞ͻ͜ʣʢ@sakuragi_keiʣ ౦ژதࢢࡏॅ WebσΟ ϨΫλʔ ' ͳͲ ' খࡩΠϯίͱγϩϋϥΠϯίͱࠇࣲݘͷύύ
PerfumeͱΞϯφϛϥʔζ͕͖
2 ౦ژதࢢʹͯ Web੍࡞ɾDTP੍࡞ʢ14ظʣ https://www.cherrypieweb.com/ ϒϩά1997։ઃ ࠓͰ28 ʂ ͪͳΈʹ WordPressͷॳ൛ϦϦʔε2003
3 ࠷ॳʹ͓அΓ͓͖ͯ͠·͢
4 ࠓ ϒϩοΫΤσΟλΛ͍͜ͳ͍ͯ͠Δํͷ ͓ʹཱͭΑ͏ͳTips͋Γ·ͤΜ
5 ϒϩοΫΤσΟλ͕͑Δํʹͪ͜ΒΛ͓εεϝ ৮ΕΔ͚ͲյΕͳ͍WordPressͷ࡞Γํ – WordCamp Kansai 2025 https://kansai.wordcamp.org/2025/session/how-to-build-a-wordpress-site-that-can-be- touched-but-wont-break/
6 ɾɾɾͰɺ͋ΒͨΊͯɺ
7 ͳͥ page-xxx.php ͰݻఆϖʔδΛ࡞Δͷ͔ʁ
8 ߘը໘Ͱ·ͱͳϨΠΞτͳΜͯग़དྷΔΘ͚͕ແ͍͔Β ʢݸਓͷײͰ͢ʣ
9 WordPressͷ੍࡞ख๏͕ఆண࢝͠Ίͨ͜Ζͷ ߘը໘ͷΤσΟλ ʮΫϥγοΫΤσΟλʯ
10
11 こんなのでできるわけない こんなのでできるわけない ʢݸਓͷײͰ͢ʣ
12 WYSIWYGΤσΟλWeb͕ࣝແͯ͑͘Δ ˣ Web͕ࣝແ͍ਓ͕͏ͷ ʢݸਓͷײͰ͢ʣ
13 WYSIWYGエディ タ = 素人 WYSIWYGエディ タ = 素人 page-xxx.php
= プロ page-xxx.php = プロ ʢݸਓͷײͰ͢ʣ
14 ͡Ό͋ɺϒϩοΫΤσΟλͲ͏ͳͷ͔ʁ
15
16 ϒϩοΫΤσΟλ ΫϥγοΫΤσΟλͷUI͕มΘ͚ͬͨͩͷͷ Ͱͳ͍ ˣ ίʔυ͕ॻ͚ͳ͍ਓͷͨΊͷͷͰͳ͍
17 ϒϩοΫϒϥοΫϘοΫεͰͳ͍ ˣ ϒϩοΫΤσΟλHTMLδΣωϨʔλʔ
18 ࣮ɺίʔυ͕Θ͔ΔͱϒϩοΫΤσΟλָ͍͠
20 ຊͷαϯϓϧϖʔδ page-xxx.php Ͱ࡞ͯ͠Έ·ͨ͠ɹ ΫϥγοΫΤσΟλͩͱ ඍົʹ࡞ΓͮΒ͍ͷͰɺ ֎෦ΤσΟλͰ࡞Γ͕ͪ
19 ブロックエディ タで ブロックを使わずにページを作る
21 ΧελϜHTMLϒϩοΫʹϕλுΓͯ͠ΈΔ
22 ηΫγϣϯ͝ͱʹখ͚ʹͯ͠ΈΔ
23 ϦετϏϡʔ͕ศར ɾ ϖʔδͷߏ͕Θ͔Γ͍͢ Ҡಈ؆୯ ෳ؆୯ ɾ λάͷೖΕࢠͷબϛε͕ແ͘ͳΔ
24 ίʔυΛೖΕࢠʹ͢ΔʢάϧʔϓԽʣ ɾ άϧʔϓԽ ˺ divλάͰғΉ ɾ divҎ֎ͰғΊΔ ʢޙͰཪٕΛ͓ڭ͑͠·͢ʣ
25 HTMLをブロックにしてみる
26 ΧελϜHTMLϒϩοΫΛλάϨϕϧ·Ͱখ͚ʹ͢Δ
27 ݟग़͠ϒϩοΫɺஈམϒϩοΫ ɾ ϒϩοΫ͕ॻ͖ग़͢ίʔυγϯϓϧ
28 ϒϩοΫઃఆͷίʔυΛݟͯΈΔ ɾ ϓϦηο τclass ࢦఆstyleଐੑʹͳΔ
29 ίʔυΤσΟλΛݟͯΈΔ ɾ ϒϩοΫίϝϯ τͰද͞Ε͍ͯΔ ɾ ϒϩοΫͷઃఆ͕ ίϝϯ τʹهࡌ͞Ε ίʔυʹө͞ΕΔ
30 ͔ͯ͠͠ɺϒϩοΫΤσΟλͬͯίʔυͰฤूͰ͖ΔͷͰʁ
31 Ζ͏ͱࢥ͑ ɾ ίʔυͰϒϩοΫΛෳͰ͖Δ ɾ ίʔυͰઃఆΛมߋͰ͖Δ ίʔυͷमਖ਼ϛεΛ͍͢͠ͷͰ ͋·Γ͓εεϝ͠·ͤΜ
32 コードに注目したいブロック ΧϥϜϒϩοΫɾԣฒͼϒϩοΫ ɾ flexboxʢϝσΟΞΫΤϦͰ flex-wrap: wrap / nowrap Γସ͑ʣ
33 ը૾ϒϩοΫ ɾ WordPress͕ࣗಈతʹϨεϙϯγϒରԠ͍ͯ͠Δ ɾ ը૾͕Ξοϓϩʔυ͞Εͨͱ͖ʹෳͷαΠζʹࣗಈͰϦαΠζ ʢαΠζϝσΟΞઃఆʹΑΔʣ ɾ imgλάʹࣗಈͰsrcsetଐੑΛઃఆ
34 ブロックパターン ɾ ίʔυΛ͍·ΘͤΔ ɾ ಉظύλʔϯʗඇಉظύλʔϯ
35 ඇಉظύλʔϯ ɾ ίʔυεχϖο τΈ͍ͨͳͷʢ୯७ͳෳʣ ɾ ΦϦδφϧΛमਖ਼ͯ͠ɺஔͨ͠ύλʔϯʹӨڹ͕ͳ͍ ɹɹ ΦϦδφϧ
36 ಉظύλʔϯ ɾ ςϯϓϨʔ τύʔπΈ͍ͨͳͷʢίʔυΛݺͼग़͢ʣ ɾ ΦϦδφϧΛमਖ਼͢Δͱશͯʹө͞ΕΔ ɹɹ ΦϦδφϧ
37 ಉظύλʔϯͷ্ॻ͖ ɾ Ҿ͖ͷςϯϓϨʔ τύʔπΈ͍ͨͳͷʢҾʹΑͬͯग़ྗ͕มΘΔʣ ɾ ΦϦδφϧΛमਖ਼͢Δͱɺ্ॻ͖͍ͯ͠ͳ͍ͱ͜Ζ͚͕ͩө͞ΕΔ ɹɹ ΦϦδφϧ
38 コードが書けるとブロックテーマは面白い
39 ςʔϚͷઃఆΛ֎෦CSSͰ͍·Θ͢ ɾ theme.json αΠ τΤσΟλʔͷઃఆ͕ CSSมʹͳΔ ৭ɾλΠϙάϥϑΟɾεϖʔγϯάɾɾɾ ɹˣ ֎෦CSSͰར༻Ͱ͖Δ
ɾ theme.json "settings": { "color": { "palette": [ { "name": "Primary", "slug": "primary", "color": "#0073aa" } ] } } ɹɹɹˣ ɾglobal-style-inline :root { --wp--preset--color--primary: #0073aa; } ɾmy-style.css .my-style { color: var(--wp--preset--color--primary); }
40 ίʔυ͕ॻ͚ΔͱϒϩοΫςʔϚຊʹ໘ന͍ͷͰɺ ͲΜͲΜ৮ͬͯΈΑ͏
41 ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ