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.7k
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
6.8k
Cloudflare Pages に入門してみた / 2023-10-14 Cloudflare Meetup Nagano Vol.2
torounit
1
850
ブロックエディタをゴリゴリに使い倒してサイトを作った話 / Kansai WordPress Meetup 2023 09 23
torounit
14
8.9k
ブロックエディターカスタマイズことはじめ #wpshinshu / 2023-06-17 Shinshu WordPress Meetup vol.24
torounit
1
300
FSE時代におけるWEBサイト制作の研究 #wpshinshu / 2023-05-20 Shinshu WordPress Meetup vol.23
torounit
0
380
ブロックエディターを用いたWEBサイト開発とカスタムフィールドのあり方を考える。/ WordCamp Japan 2021
torounit
0
490
ブロックエディターで変わる、WordPress でのウェブサイト開発 / SaCSS Special 26
torounit
4
820
Block Editor カスタマイズ入門 #WPmeetupOsaka / Get started customize for block editor
torounit
12
2.9k
本当にだれにでもできる、WordPress をよりよいものにする方法。/ wordcamp tokyo 2019
torounit
2
2.4k
Other Decks in Technology
See All in Technology
これまでのキャリアとこれからMLエンジニアとしてどう動くか
masatakashiwagi
1
770
暗黙知を集積するプラットフォーム : 「健常者エミュレータ事例集」の取り組み
sora32127
1
170
Challenges - Open Farming Hackdays 2024
loleg
0
580
現実世界の事象から学ぶSOLID原則
h0r15h0
25
11k
Oracle Database で機械学習を始めよう! Oracle Machine Learning
oracle4engineer
PRO
1
140
やっていきテスト
k6s4i53rx
0
160
大規模データとの戦い方
knih
1
480
社内共通ルールを値オブジェクトにして社内ライブラリとして運用してみた話
leveragestech
2
1.2k
実務への応用例から考える 変更に強いオブジェクト指向設計 / 20240324-ooc2024
bengo4com
9
5.6k
戦略的DDDを実践するための跳躍力 / OOC 2024
pictiny
6
4.3k
LLMプロダクト事業の立ち上げにおける挑戦
layerx
PRO
7
1.5k
HoneycombとOpenTelemetryでオブザーバビリティに入門してみる
sumiren
2
160
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
227
130k
Agile that works and the tools we love
rasmusluckow
323
20k
Designing for humans not robots
tammielis
247
25k
The MySQL Ecosystem @ GitHub 2015
samlambert
242
12k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
226
16k
Rails Girls Zürich Keynote
gr2m
91
13k
The Illustrated Children's Guide to Kubernetes
chrisshort
28
46k
RailsConf 2023
tenderlove
0
510
Fantastic passwords and where to find them - at NoRuKo
philnash
35
2.4k
Unsuck your backbone
ammeep
661
56k
KATA
mclloyd
14
11k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
113
18k
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