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
WordPress のプラグイン作ったりコアコントリビュータになった話。そして、その楽しさと意義。
Search
Toro_Unit (Hiroshi Urabe)
July 10, 2016
Technology
1
2k
WordPress のプラグイン作ったりコアコントリビュータになった話。そして、その楽しさと意義。
WordCamp Kansai 2016 2日目で、発表したスライドです。
Toro_Unit (Hiroshi Urabe)
July 10, 2016
Tweet
Share
More Decks by Toro_Unit (Hiroshi Urabe)
See All by Toro_Unit (Hiroshi Urabe)
ブロックテーマ時代における、テーマの CSS について考える Toro_Unit / 2025.09.13 @ Shinshu WordPress Meetup
torounit
0
350
ブロックテーマでサイトリニューアルした話 / Toro_Unit / 2025.04.12 @ Shinshu WordPress Meetup
torounit
1
230
Cloudflare Meetup Nagano Vol.3
torounit
1
110
僕が考える 「HTML サイトを WordPress にする」話 / 2023-11-05 Kansai WordPress Meetup
torounit
9
7.7k
Cloudflare Pages に入門してみた / 2023-10-14 Cloudflare Meetup Nagano Vol.2
torounit
2
2k
ブロックエディタをゴリゴリに使い倒してサイトを作った話 / Kansai WordPress Meetup 2023 09 23
torounit
15
10k
ブロックエディターカスタマイズことはじめ #wpshinshu / 2023-06-17 Shinshu WordPress Meetup vol.24
torounit
1
430
FSE時代におけるWEBサイト制作の研究 #wpshinshu / 2023-05-20 Shinshu WordPress Meetup vol.23
torounit
0
470
ブロックエディターを用いたWEBサイト開発とカスタムフィールドのあり方を考える。/ WordCamp Japan 2021
torounit
0
620
Other Decks in Technology
See All in Technology
コミュニティと共に変化する 私とFusicの8年間
ayasamind
0
450
re:Invent完全攻略ガイド
junjikoide
1
260
自己的售票系統自己做!
eddie
0
430
「データ無い! 腹立つ! 推論する!」から 「データ無い! 腹立つ! データを作る」へ チームでデータを作り、育てられるようにするまで / How can we create, use, and maintain data ourselves?
moznion
6
3.3k
Proxmox × HCP Terraformで始めるお家プライベートクラウド
lamaglama39
1
180
Datadog On-Call と Cloud SIEM で作る SOC 基盤
kuriyosh
0
160
AIと共に開発する時代の組織、プロセス設計 freeeでの実践から見えてきたこと
freee
3
580
"おまじない"はもう卒業! デバッガで探るSpring Bootの裏側と「学び方」の学び方
takeuchi_132917
0
110
プログラミング言語を書く前に日本語を書く── AI 時代に求められる「言葉で考える」力/登壇資料(井田 献一朗)
hacobu
PRO
0
150
Logik: A Free and Open-source FPGA Toolchain
omasanori
0
280
AWS IAM Identity Centerによる権限設定をグラフ構造で可視化+グラフRAGへの挑戦
ykimi
2
710
手を動かしながら学ぶデータモデリング - 論理設計から物理設計まで / Data modeling
soudai
PRO
10
3.2k
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
The Pragmatic Product Professional
lauravandoore
36
7k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Typedesign – Prime Four
hannesfritz
42
2.9k
Side Projects
sachag
455
43k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
116
20k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Transcript
WordPress ͷϓϥάΠϯ࡞ͬͨΓί ΞίϯτϦϏϡʔλʹͳͬͨɻͦ͠ ͯɺͦͷָ͠͞ͱҙٛɻ Toro_Unit / 2016.07.10 @ WordCamp Kansai
2016 1
whoami ͜͡͠ΐ͏͔͍ 2
Profile Toro_Unit / ෦ ߛ (͏Β ͻΖ͠) Frontend Engineer /
Plugin Developer / Web Designer Github: @torounit Twitter: @Toro_Unit Facebook: fb.me/torounit Blog: https://torounit.com 3
Profile • ౡݝ܊ࢁࢢੜ·Εɻ܈അݝଠాࢢ ҭͪɻݝদຊࢢ1̕ɻ • ʹ͡Ύ͏ͳͳ͍͞ɻ • ;ΓʔΒΜ͢ʹͳΓ·ͨ͠ɻ 1 Wikimedia
Commons/File:File: 130608MatsumotoCastleMatsumotoNaganoprefJapan02bs4.jpg Author: 663highland.License:CC2.5 4
WordPressͱͷؔΘΓ 5
Plugins • Custom Post Type Permalinks ( Active Install 60,000+!!!
) • Simple Post Type Permalinks • Powerful Posts Per Page • Hello Kushimoto • etc... 6
Other Project • WordPress 4.3 ~ 4.5 Core Contributor •
WP-CLI (v0.20.2) / VCCW Community • WordBench (࠷ۙ দຊൡɾ൧ాൡͱ͔Ͱ͖·ͨ͠) • WordCamp / WordBash / WordWine ... 7
ΞδΣϯμ 8
1. ϓϥάΠϯΛ࡞ͬͯެ։ͯ͠Έͨɻ 2. ύονΛૹͬͯΈͨɻ 1. ϓϥάΠϯʹύονΛૹͬͯΈͨɻ 2. ຊମʹύονΛૹͬͯΈͨɻ 3. ͍͞͝ʹ
9
1. ϓϥάΠϯΛ࡞ͬͯެ։ͯ͠Έͨ 10
1.ϓϥάΠϯ։ൃΛ࢝ΊͨܦҢ 11
2011 5years ago 12
• ࣾͰWordPressΛ৮Γͩͯ͠1͙Β͍ɻ • ࣾʹΤϯδχΞډΒͣɺํͳͷͰษڧձͳͲ͋·Γ ແ͍ɻͱΓ͋͑ͣɺެࣜσΟϨΫτϦͷςʔϚϓϥάΠϯ Λݟ࢛ͯۤീۤɻ • ΦϨΦϨϓϥάΠϯΛ͍͔ͭ͘࡞ͬͯͨΓɻ 13
14
WordPress ͷΠϕϯτʂ ࢀՃͯ͠ΈΑ͏ʂ 15
WordCamp Tokyo 2011Ͱ͠Όͬͯདྷ·ͨ͠ɻ | Firegoby 16
ʮΞοϓσʔτ͕؆୯ʹͳΔΑʂʯ • ʮཧը໘͔ΒΞοϓσʔτͰ͖ΔΑ͏ʹͳΔΑʂʯ ʮৄ͍͠ਓ͔ΒϑΟʔυόοΫΒ͑ΔΑʂʯ • ʮPHPશੈքڞ௨ʂඇӳޠݍͷਓଟ͍͔Βେৎʂʯ 17
ͷײ ʮͳΜ͔ࢥͬͯͨΑΓؾܰͦ͏ͩ͠ɺϑΟʔυόοΫͱ͔Β ͑ͨΒָͩͳʔɻ΄Μͱ͔ͳ͊ŋŋŋ??? (৴ٙ)ʯ ·͊ὃ͞ΕͨͱࢥͬͯͬͯΈΑ͏ʂ 18
2011/12/05. ͱ͍͏Θ͚Ͱɺެ։ͯ͠Έͨɻ Total Downloads: 260,358 (2016/7/10ݱࡏ) 19
2011/12/08. ૣϚαΧϦ͕ඈΜͰདྷͨɻ ҙ༁Ͱ͢ɻޠฐͳͲΛؚΜͰ͓Γ·͢ɻ • σόοάϞʔυͰͷݕূ͠ΖʂNotice ͰͯΔΜ͚ʂ • Τεέʔϓ͠ΖʂηΩϡϦςΟΨόΨόʂ • etc...
20
ͼͼΔʂ 21
Ͱɺ͋Γ͕͍ͨʂ͏Ε͍͠ʂ 22
པΜͰ͍ͳ͍ͷʹݕূͬͯ͘ΕΔʂ ίʔυಡΜͰࢦఠͯ͘͠ΕΔʂ ϓϧϦΫΤετͱ͔ύονͱ͔͘ΕΔʂউखʹͯ͘͠ΕΔʂ 23
ଞͷਓ͔Βͨ͘͞ΜͷϑΟʔυόο ΫΛΒ͍·ͨ͠ɻ 24
࠷ۙདྷͨ issue ҙ༁: wp_get_post_terms ͏ͱσʔλ͕Ωϟογϡ͞Εͳ͍͔Βget_the_terms ͷํ͕ྑ͍Αʂ 25
ʮੈքͱަྲྀʯ͔֬ʹग़དྷͨ! • ݴ༿ͰΓͱΓͰ͖ͳͯ͘ɺίʔυΛհͨ͠ΓͱΓ͕ ग़དྷΔͷ໘ന͍ʂԕํͷਓͱ͔ɺւ֎ͷਓͱ͔ɻίʔυ͔ Β࢝·ͬͯྑ͘ͳͬͨਓɻ 26
ϑΟʔυόοΫຊʹษڧʹͳΔɻ • ਖ਼ɺWordPress ͷͯ͢ʹৄ͍͠Θ͚͡Όͳ͍ɻ͚ͩͲɺ ୭͔͕ڭ͑ͯ͘ΕΔɻΒͳ͔ͬͨػೳɾڍಈͱ͔ɻ • ϓϥάΠϯͷςετࣗಈԽͱ͔ڭ͑ͯΒͬͨΓɻ • ϑΟʔυόοΫΛ͍͘͢ɺ֦ுɾमਖ਼͢ΔͨΊʹྑ͍ί ʔυΛॻ͜͏ͱ͍͏ҙ͕͍ࣝͨɻਓͷςετΛಡΜͩΓɻ
• ؾ͕͚͔ͭͳΓͷεΩϧΞοϓɻ 27
ίʔυΛެ։͢Δ͜ͱɺϝϦοτ͋Γ·͢Α!! 28
Add Your Plugin! 29
2. ύονΛૹͬͯΈͨɻ 30
2-1. ϓϥάΠϯʹύονΛૹͬͯΈͨ 31
ʮެࣜσΟϨΫτϦʹ্͛ΔͱΞοϓσʔτ؆୯!ʯ ͱઌ΄Ͳݴ͍·͚ͨ͠Ͳɻ 32
ͦΕɺࣗͷϓϥάΠϯ͚ͩͰྑ͍ͷʁ ( ύʔϚϦϯΫͷϓϥάΠϯ͚ͩ͡ΌαΠτ࡞Εͳ͍ɻ ) 33
ଞͷਓ͕࡞ͬͨϓϥάΠϯʹόά͕͋ͬͨΒ? Γͳ͍ػೳ͕͋ͬͨΒ? 34
मਖ਼ΛૹΓ͚ͭΕ͍͍ΑͶ!!! ͦΕ͕ө͞ΕͨΒָͩΑͶ!!! 35
ͱ͍͏Θ͚ͰύονΛૹͬͯΈͨࣄྫɻ 36
WordPress Ͱ ଟݴޠαΠτΛ࣮ݱ͢ΔϓϥάΠϯ Bogo ʹͭ ͍ͯͷ૬ஊ͕ϑΥʔϥϜʹߘ͞Ε͍ͯͨɻ Bogo ͷ࡞ऀ Contact Form
7 Ͱ͓ͳ͡Έͷࡾ͞Μɻ ΧελϜߘλΠϓͰɺݴޠΛ·͍ͨͰಉ͡εϥοάͷߘΛ ࡞Εͳ͍ͱ͍͏૬ஊɻ ϑΥʔϥϜ » BogoɿݴޠؒͰಉ͡ύʔϚϦϯΫΛ͏ʹʁ — WordPress 37
։ൃதͷҊ݅Ͱ Bogo Λ͍ͬͯͨͷͰɺݕূͯ͠Έͨɻ ͦͷ݁Ռɺhierarchical => true ͳΧελϜߘλΠϓʹ͓ ͍ͯɺͦͷ͕ൃੜ͢Δ͜ͱ͕ൃ֮ɻ 38
• ༷͕૿͑ͨ߹ʹɺಉ͡ʹͿ͔ͭΔ͔ɻɻɻɻ (ӅΕ༷ͨͳΜͯྑ͋͘Δ) • όάݟ͚ͭͪΌ͔ͬͨΒؾʹͳΔɻ 39
ͱ͍͏Θ͚ͰɺͦͷΛमਖ਼ɻίʔυΛϑΥʔϥϜʹషͬͯ Έͨɻ 40
ʮToro_Unit ͞Μɺ͢Β͍͠ಎɺ͋Γ͕ͱ͏͍͟͝·͢ɻ͍ ͍ͨͩͨύονΛ࣍ͷϦϦʔεͰಋೖ͠·͢ɻௐࠪʹ࣌ؒΛׂ ͍͍͖ͯͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻʯ 41
ΉͪΌͪ͘Ό͏Ε͍͠ʂ 42
Ͱɺଞʹྑ͍͜ͱɻ 43
͜ͷ͕मਖ਼͞Εͨ͜ͱͰɺͤʹͳͬͨਓɻ • Ϛʔδ͞Εͯخ͔ͬͨࣗ͠ɻ • ࡞ऀͷࡾ͞Μɻʢཁ֬ೝʣ • ͜ͷʹࠔ͍ͬͯͨϑΥʔϥϜߘऀͷํɻ ͦͯ͠ɻ 44
Bogo ΛͬͯΔਓɺ͜Ε͔Β͏ਓ! • ϑΟʔυόοΫͷ͓͔͛Ͱউखʹόά͕ͬͯΔʂ • ͦͦ͜ͷͷଘࡏ͢ΒΒͣʹࡁΉɻ 45
ͦͦɺΦʔϓϯιʔε͔ͩΒɺͰ͖ͨ͜ͱɻ ͜Εͬͯ͘͢͝ͳ͍ʁ 46
Open Source Power! 47
2-2. ίΞʹύονΛૹͬͯΈͨɻ 48
• ͋Δɺget_post_type_labels Λݺͼग़͢ͱɺ get_post_type_object ͷΓ͕࿈ྻʹมΘͬͯ͠· ͏ͱ͍͏όάʹͿͪͨΔɻ(ຊObject) • ΦϨΦϨؔΛ࡞͍ͬͯ྇Ͱྑ͍͚Ͳ͔ͬͨΔ͍ͳŋŋŋɻ 49
ίΞͷόά͕ΕɺָͩΑͶʁ 50
• ίΞͷτϥοΫΛௐͨͱ͜Ζɺ2ϲ݄લʹใࠂ͞Ε͍ͯ ͕ͨະରԠͩͬͨɻϚχΞοΫ͍͔ͩͬͨͤɺίϝϯτͳͲ ಛʹ͍͓ͭͯΒͣɻ #33023 (_get_custom_object_labels should not change data
type to Array from Object.) – WordPress Trac ݪҼΘ͔ͬͯΔ͠ɺ͜ΕύονૹΕྑ͍Μ͡Όແ͍͔ʁ 51
ͱ͍͏Θ͚ͰɺύονΛૹͬͨɻ 52
ӳޠͰઆ໌͢Δͷ͕େมͩͬͨͷͰɺςετίʔυ͍ͭͰʹॻ͍ͨɻ 53
Ϛʔδ͞Εͨʂ 54
ΊͬͪΌخ͍͠!! WordPress ʹ໊લ͕ࡌͬͯࣗຫͰ͖Δ! 55
Ͱ΄͔ʹ(ҎԼུ 56
Open Source Power! 57
3.͍͞͝ʹ 58
ϓϥάΠϯΛ࡞͍ͬͯΔཧ༝ɻ ࣗͷϓϥάΠϯຊʹͨ͘͞ΜͷαΠτͰಈ͍͍ͯ·͢ ͕ŋŋŋŋ • ࣗͷཉ͔ͬͨ͠ػೳ͕ແ͔͔ͬͨΒ࡞͚ͬͨͩʂ • Ξοϓσʔτָ͕ͩͱݴΘΕͨ͠ɺϑΟʔυόοΫ͕͋Δͱ ͕ࣗ͏ͱ͖ʹָͩͳͱࢥ͚ͬͨͩʂ 59
ύονΛૹͬͨཧ༝ɻ • ୯ʹ͕ࣗࠔͬͨΓ͔ͨ͠ΒɺύονΛૹ͚ͬͨͩɻ • ύονຊମʹϚʔδ͞Εͨํָ͕ͩͬͨ͠ɺใࠂ͢Ε࡞ ऀͷํଞͷਓʹݟͯɺόάΛݟ͚ͭͯΒ͑Δ͔ ɾɾɾΈ͍ͨͳͦΜͳग़དྷ৺ɻ 60
ͦΜͳ͍ܰؾ͕࣋ͪɺ݁Ռతʹ͍ΖΜ ͳਓͷॿ͚ʹͳ͍ͬͯΔ!!! 61
ͦͯ͠ɺΒͳ͍ؒʹࣗͦͷԸܙ Λଘʹड͚͍ͯΔ!!! 62
• ΦϨΦϨϑΥʔΫ • ΦϨΦϨύον • ΦϨΦϨϓϥάΠϯ ͋ͳͨͷϨϙδτϦʹ͍ͬͯ·ͤΜ͔ʁ 63
Let's Contribute! 64
ίΞͷڍಈʹʮ͋Εͬʯŋŋŋͬͯ ࢥͬͨ͜ͱ͋Γ·ͤΜ͔ʁ 65
Let's Contribute! 66
Good First Bugs ॳΊͯͷਓʹΦεεϝͷ؆୯ͳόάɻ ίΞͷύονΛૹͬͨΓ͢Δ࿅शʹͲ͏Ͱ͔͢ʁ 67
Let's Contribute! 68
Let's Open Source! 69
Thanks! Github: @torounit Twitter: @Toro_Unit Facebook: fb.me/torounit Blog: https://torounit.com 70