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
1.8k
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)
僕が考える 「HTML サイトを WordPress にする」話 / 2023-11-05 Kansai WordPress Meetup
torounit
9
7.2k
Cloudflare Pages に入門してみた / 2023-10-14 Cloudflare Meetup Nagano Vol.2
torounit
2
1.4k
ブロックエディタをゴリゴリに使い倒してサイトを作った話 / Kansai WordPress Meetup 2023 09 23
torounit
14
9.5k
ブロックエディターカスタマイズことはじめ #wpshinshu / 2023-06-17 Shinshu WordPress Meetup vol.24
torounit
1
360
FSE時代におけるWEBサイト制作の研究 #wpshinshu / 2023-05-20 Shinshu WordPress Meetup vol.23
torounit
0
400
ブロックエディターを用いたWEBサイト開発とカスタムフィールドのあり方を考える。/ WordCamp Japan 2021
torounit
0
520
ブロックエディターで変わる、WordPress でのウェブサイト開発 / SaCSS Special 26
torounit
4
830
Block Editor カスタマイズ入門 #WPmeetupOsaka / Get started customize for block editor
torounit
12
3.1k
本当にだれにでもできる、WordPress をよりよいものにする方法。/ wordcamp tokyo 2019
torounit
2
2.6k
Other Decks in Technology
See All in Technology
AWS CDK を活用した 大量 AWS アカウントへのプロビジョニング例 〜 SaaSus Platform の場合 〜 於 JAWS-UG CDK支部 #17
yaggy
1
190
Mobbing Practices
kawaguti
PRO
1
230
内製化によるシステムモダナイゼーションの実践
kazokmr
0
130
Comparing Apache Flink and Spark for Modern Stream Data Processing
sharonx
0
120
WebRTC と Wasm の関係を振り返ってみた
tetter27
0
220
JPOUG_10_20241018_OracleDB_AWS_v1.3.pdf
asahihidehiko
1
210
5分で完全理解!ゼロから始めるOpenShift Virtualization/Starting from zero OpenShift Virtualization at 5 min
tnk4on
0
110
MobileActOsaka_241018.pdf
akaitadaaki
0
130
Why and Why not of enabling swap in Kubernetes
hwchiu
0
380
オニオンアーキテクチャで実現した 本質課題を解決する インフラ移行の実例
hryushm
4
580
作って理解する RDBMSのしくみ
ydah
7
590
俺とVSCode Python Debugger Extension
sat
PRO
1
150
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
19
1k
Statistics for Hackers
jakevdp
796
220k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
41
9.2k
Writing Fast Ruby
sferik
626
60k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
740
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
355
29k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
231
17k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
167
49k
Why You Should Never Use an ORM
jnunemaker
PRO
53
9k
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