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
MW WP Form について語り尽くす
Search
Takashi Kitajima
May 21, 2017
Technology
0
3.1k
MW WP Form について語り尽くす
WordBench Fest.山口 -Spring WP Fever- 2017/05/20
Takashi Kitajima
May 21, 2017
Tweet
Share
More Decks by Takashi Kitajima
See All by Takashi Kitajima
Snow Monkey&unitone から見た WordPress エディターの変遷
inc2734
0
140
Snow Monkey CM
inc2734
0
87
メンテナンス性を考慮した CSS 設計
inc2734
0
340
Snow Monkey とは
inc2734
0
1.2k
WordPress_テーマのつくりかた.pdf
inc2734
4
540
受託開発者だった僕が WordPress の有料テーマ開発者になって学んだこと
inc2734
1
1k
Snow Monkey(WordPress) による web コンテンツ制作の新しいカタチ【ビジネスパーソン向け】
inc2734
0
110
Snow Monkey とコミュニティ
inc2734
0
630
Snow Monkey における私の技術的偏愛
inc2734
0
570
Other Decks in Technology
See All in Technology
KMP の Swift export
kokihirokawa
0
330
実装で解き明かす並行処理の歴史
zozotech
PRO
1
420
SoccerNet GSRの紹介と技術応用:選手視点映像を提供するサッカー作戦盤ツール
mixi_engineers
PRO
1
180
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
9.1k
Goに育てられ開発者向けセキュリティ事業を立ち上げた僕が今向き合う、AI × セキュリティの最前線 / Go Conference 2025
flatt_security
0
350
定期的な価値提供だけじゃない、スクラムが導くチームの共創化 / 20251004 Naoki Takahashi
shift_evolve
PRO
3
320
【新卒研修資料】LLM・生成AI研修 / Large Language Model・Generative AI
brainpadpr
24
17k
SREとソフトウェア開発者の合同チームはどのようにS3のコストを削減したか?
muziyoshiz
1
100
[2025-09-30] Databricks Genie を利用した分析基盤とデータモデリングの IVRy の現在地
wxyzzz
0
480
AIAgentの限界を超え、 現場を動かすWorkflowAgentの設計と実践
miyatakoji
0
140
社内報はAIにやらせよう / Let AI handle the company newsletter
saka2jp
3
280
GC25 Recap+: Advancing Go Garbage Collection with Green Tea
logica0419
1
420
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Optimizing for Happiness
mojombo
379
70k
Designing for humans not robots
tammielis
254
25k
For a Future-Friendly Web
brad_frost
180
9.9k
GitHub's CSS Performance
jonrohan
1032
460k
Visualization
eitanlees
148
16k
Done Done
chrislema
185
16k
Docker and Python
trallard
46
3.6k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
Transcript
.881'PSNʹ͍ͭͯޠΓਚ͘͢ 8PSE#FODI'FTUࢁޱ4QSJOH81'FWFS
ϞϯΩʔϨϯν IUUQTJODPSH ΩλδϚλΧγ !JOD ϑϦʔϥϯε 8FCσβΠφʔϓϩάϥϚʔ
8PSE1SFTTϓϥάΠϯ .881'PSNɺ4NBSU$VTUPN'JFMET 8PSE1SFTTςʔϚ )BCBLJSJɺ.JNJ[VLV 4BTT$44ϑϨʔϜϫʔΫ #BTJT
8PSE1SFTTίϛϡχςΟͱͷؔΘΓ 8PSE$BNQ5PLZP࣮ߦҕһ 8PSE$BNQ5PLZP-5 8PSE$BNQ,BOTBJ࣮ߦҕһϋϯζΦϯ 8PSE$BNQ,BOTBJ࣮ߦҕһεϐʔΧʔ
8PSE$BNQ5PLZPεϐʔΧʔ FUD
ຊʹ͑ΔςʔϚͱͲͷΑ͏ͳ ͷ͔Λߟ͑ଓ͚ͨ݁Ռ ΩλδϚλΧγ!JOD IUUQTHJUIVCDPNJODNJNJ[VLV
.881'PSNͱ
.881'PSNͱ w ͓͍߹ΘͤϑΥʔϜ࡞ϓϥάΠϯ w ֬ೝը໘Λ͞Ή͜ͱ͕Ͱ͖Δ w μϯϩʔυɿ w
ΞΫςΟϒΠϯετʔϧɿ
$POUBDU'PSN w μϯϩʔυɿ w ΞΫςΟϒΠϯετʔϧɿ
https://nondesu.jp/
IUUQTXQEPSH
IUUQTXQEPSH
.881'PSNͷجຊػೳ
ೖྗը໘c֬ೝը໘cྃը໘ 63-ͷઃఆ ͍߹Θͤͷσʔλϕʔεอଘ ͍߹Θͤσʔλͷάϥϑදࣔ ๛ͳόϦσʔγϣϯϧʔϧ
.881'PSNͷ࣮ߦϓϩηε
༁ϑΝΠϧͷಡΈࠐΈ ֤ೖྗϑΟʔϧυͷಡΈࠐΈ ֤όϦσʔγϣϯϧʔϧͷಡΈࠐΈ .881'PSNΛཧ͢ΔΧελϜߘλΠϓΛొ ϝΠϯίϯτϩʔϥʔಡΈࠐΈ
ςϯϓϨʔτͷಡΈࠐΈલ UFNQMBUF@JODMVEF ߘσʔλɾςϯϓϨʔτʹ.881'PSNΛ࣮ߦ͢ΔͨΊͷγϣʔτίʔυ <NXGPSN@GPSNLFZ>ɺ<NXGPSN> ͕ଘࡏ͢Δ͔νΣοΫ ଘࡏ͠ͳ͔ͬͨΒ͜͜Ͱ.881'PSNʹؔ͢Δॲཧऴྃ γϣʔτίʔυΛͱʹͦͷϑΥʔϜͷઃఆΛऔಘ ૹ৴σʔλΛ%#ʹҰ࣌తʹอଘ 5SBOTJFOU"1* $PPLJF ϖʔδΩϟογϡΛແޮʹ͢ΔͨΊͷ)551ϔομʔΛग़ྗ ૹ৴σʔλ͕ਖ਼͍͔͠νΣοΫ $43'ରࡦͱͯ͠ૹ৴σʔλʹؚ·ΕΔτʔΫϯΛνΣοΫ ૹ৴σʔλʹର͠όϦσʔγϣϯνΣοΫΛ࣮ߦ ૹ৴σʔλɺόϦσʔγϣϯ݁ՌΛݩʹͲͷը໘Λදࣔ ϦμΠϨΫτ ͢Δ͔Λܾఆ 1045࣌ɺ͘͠ϦμΠϨΫτઌ͕ݱࡏͷ63-ͱҟͳΕϦμΠϨΫτΛ࣮ߦ ॳظԽɾجຊॲཧ ը໘දࣔͷͨͼʹ࣮ߦ Wݱࡏ
લड़ͷॳظԽॲཧΛ࣮ߦ ࠷ॳʹදࣔ͢Δ͖ը໘ೖྗը໘ͳͷͰϦμΠϨΫτߦΘΕͳ͍ ֤ೖྗϑΟʔϧυͷγϣʔτίʔυΛొ BEE@TIPSUDPEF ϖʔδදࣔ
UIF@DPOUFOU 8PSE1SFTTͷը໘ද͕࣮ࣔߦɺ.881'PSNͷγϣʔτίʔυͷ࣮ߦ͕ߦΘΕɺ ϑΥʔϜ͕දࣔ͞ΕΔ ֬ೝϘλϯԡԼ ݱࡏදࣔதͷը໘ʹ1045 ૹ৴ϘλϯԡԼ ݱࡏදࣔதͷը໘ʹ1045 ೖྗը໘ 1045 Wݱࡏ
લड़ͷॳظԽॲཧΛ࣮ߦ @1045ʹ8PSE1SFTTͷϦΫΤετ RVFSZ@WBST ͱಉ໊ͷΩʔؚ͕·Ε͍ͯΔ߹ɺ ͦͷRVFSZ@WBSTΛআ ϑΝΠϧͷΞοϓϩʔυ͕͋Δ߹ɺϦμΠϨΫτͷલʹҰ࣌σΟϨΫτϦʹอଘ
όϦσʔγϣϯΤϥʔͳ͠ ֬ೝը໘ϦμΠϨΫτ όϦσʔγϣϯΤϥʔ͋Γ όϦσʔγϣϯΤϥʔը໘ϦμΠϨΫτ ೖྗը໘⒌ ϦμΠϨΫτ IUUQFYBNQMFDPN OBNFࢁాଠ ໊͓લɿ<NXGPSN@UFYUOBNFlOBNFz> Wݱࡏ
લड़ͷॳظԽॲཧΛ࣮ߦ όϦσʔγϣϯΤϥʔͳ͠ ͦͷ··֬ೝը໘Λදࣔ όϦσʔγϣϯΤϥʔ͋Γ όϦσʔγϣϯΤϥʔը໘ϦμΠϨΫτ
֤ೖྗϑΟʔϧυͷγϣʔτίʔυΛొ BEE@TIPSUDPEF ϖʔδදࣔ UIF@DPOUFOU 8PSE1SFTTͷը໘ද͕࣮ࣔߦɺ.881'PSNͷγϣʔτίʔυͷ࣮ߦ͕ߦΘΕɺ ϑΥʔϜ͕දࣔ͞ΕΔ %#ʹҰ࣌తʹอଘͨ͠ૹ৴σʔλΛআ XQ@GPPUFS ΔϘλϯԡԼ ݱࡏදࣔதͷը໘ʹ1045 ૹ৴ϘλϯԡԼ ݱࡏදࣔதͷը໘ʹ1045 ֬ೝը໘ 1045 Wݱࡏ
લड़ͷॳظԽॲཧΛ࣮ߦ @1045ʹ8PSE1SFTTͷϦΫΤετ RVFSZ@WBST ͱಉ໊ͷΩʔؚ͕·Ε͍ͯΔ ߹ɺͦͷRVFSZ@WBSTΛআ όϦσʔγϣϯΤϥʔͳ͠
ϝʔϧͷૹ৴ॲཧΛ࣮ߦ ྃը໘ϦμΠϨΫτ όϦσʔγϣϯΤϥʔ͋Γ όϦσʔγϣϯΤϥʔը໘ϦμΠϨΫτ ֬ೝը໘⒌ ϦμΠϨΫτ Wݱࡏ
લड़ͷॳظԽॲཧΛ࣮ߦ όϦσʔγϣϯΤϥʔͳ͠ ͦͷ··ྃը໘Λදࣔ όϦσʔγϣϯΤϥʔ͋Γ όϦσʔγϣϯΤϥʔը໘ϦμΠϨΫτ
֤ೖྗϑΟʔϧυͷγϣʔτίʔυΛొ BEE@TIPSUDPEF ϖʔδදࣔ UIF@DPOUFOU 8PSE1SFTTͷը໘ද͕࣮ࣔߦɺ.881'PSNͷγϣʔτίʔυͷ࣮ߦ͕ߦΘΕɺ ྃը໘ϝοηʔδ͕දࣔ͞ΕΔ %#ʹҰ࣌తʹอଘͨ͠ૹ৴σʔλΛআ XQ@GPPUFS ྃը໘ Wݱࡏ
લड़ͷॳظԽॲཧΛ࣮ߦ όϦσʔγϣϯΤϥʔ͋Γ ͦͷ··όϦσʔγϣϯΤϥʔը໘Λදࣔ ֤ೖྗϑΟʔϧυͷγϣʔτίʔυΛొ BEE@TIPSUDPEF
ϖʔδදࣔ UIF@DPOUFOU 8PSE1SFTTͷը໘ද͕࣮ࣔߦɺ.881'PSNͷγϣʔτίʔυͷ࣮ߦ͕ߦΘΕ ϑΥʔϜ͕දࣔ͞ΕΔ %#ʹҰ࣌తʹอଘͨ͠ૹ৴σʔλΛআ XQ@GPPUFS όϦσʔγϣϯΤϥʔը໘ Wݱࡏ
ͳΜͰ@4&44*0/ΛΘͳ͍ͷʁ $PMVNO
w ϑΥʔϜͷૹ৴σʔλΛ࣋ͪճΔํ๏ओʹͭ ೖྗը໘ͰೖྗϑΟʔϧυɺ֬ೝը໘Ͱ IJEEFOϑΟʔϧυ͍1045Ͱ࣋ͪճΔ ૹ৴͞ΕͨσʔλΛ@4&44*0/ʹอଘͯ͠ ࣋ͪճΔ
w 1045Ͱ࣋ͪճΔํ๏ը໘ભҠͷίϯτϩʔϧ͕໘ͳͷ ͱɺϦϩʔυͨ͠ͱ͖ʹʮ࠶ૹ৴͠·͔͢ʁʯతͳϒϥβΞ ϥʔτ͕ग़Δͷ͕͏ͬͱ͏͍͠ w @4&44*0/Λ͏ͷ͕Ұൠతͳํ๏ͩͱࢥ͏͕ɺڥʹΑͬͯ ಈ͔ͳ͍͜ͱ͕͋ͬͨΓɺεέʔϧΞτ͢Δͱ͖ʹ໘ w ͪͳΈʹ8PSE1SFTTຊମ@4&44*0/Λ͍ͬͯͳ͍ w
.881'PSNͱͱ@4&44*0/Λ͍͕ͬͯͨɺ্هͷ Α͏ͳ͜ͱ͕ؾʹͳΓɺ5SBOTJFOU"1* Ұ࣌తͳσʔλΛ%# ʹΩϟογϡ͢Δػೳ ͰٖࣅతʹηογϣϯػೳతͳͷΛ ࡞ΓɺͦΕΛ͏Α͏ʹมߋ
ϝʔϧૹ৴ॲཧͲ͏Δͷʁ $PMVNO
w ͱͱࣗ࡞͍ͯͨ͠ɻNC@TFOE@NBJM w Ͱࣗલڥͱ͔ΊΜͲ͍͘͞͠ةݥ w 8PSE1SFTTͷXQ@NBJM Λ͏ͷ͕٢
XQ@NBJM UP TVCKFDU NFTTBHF IFBEFST BUUBDINFOUT
ϑοΫΛͬͨ .881'PSNͷΧελϚΠζ
ϝʔϧૹ৴࣌ͷϑΟϧλʔϑοΫ w NXGPSN@BVUP@NBJM@SBX@NXXQGPSNYYY \OBNF^มલͷࣗಈฦ৴ϝʔϧΛॻ͖͑ΔϑοΫ w NXGPSN@BVUP@NBJM@NXXQGPSNYYY \OBNF^มޙͷࣗಈฦ৴ϝʔϧΛॻ͖͑ΔϑοΫ w NXGPSN@BENJO@NBJM@SBX@NXXQGPSNYYY \OBNF^มલͷཧऀѼϝʔϧΛॻ͖͑ΔϑοΫ
w NXGPSN@BENJO@NBJM@NXXQGPSNYYY \OBNF^มޙͷཧऀѼϝʔϧΛॻ͖͑ΔϑοΫ
ϝʔϧૹ৴࣌ͷΞΫγϣϯϑοΫ w NXGPSN@CFGPSF@TFOE@BENJO@NBJM@NXXQGPSNYYY ཧऀѼϝʔϧૹ৴લͷϑοΫ w NXGPSN@CFGPSF@TFOE@SFQMZ@NBJM@NXXQGPSNYYY ࣗಈฦ৴ϝʔϧૹ৴લͷϑοΫ w NXGPSN@BGUFS@TFOE@NXXQGPSNYYY ཧऀѼϝʔϧɺࣗಈฦ৴ϝʔϧૹ৴ޙͷϑοΫ
ಠࣗόϦσʔγϣϯϧʔϧͷՃ w ຊจϨϕϧ w ຊจϨϕϧ w ຊจϨϕϧ w ຊจϨϕϧ w
ຊจϨϕϧ class MW_Validation_Rule_Foo extends MW_Validation_Rule { protected $name = ‘foo’; public function rule( $key, array $options = array() ) { if ( ΤϥʔʹͳΔ݅ ) { return ‘Τϥʔϝοηʔδ’; } } public function admin( $key, $value ) { ?> <label> <input type="checkbox" <?php checked( $value[$this->getName()], 1 ); ?> name="<?php echo MWF_Config::NAME; ?>[validation][<?php echo $key; ?>][<?php echo esc_attr( $this->getName() ); ?>]" value="1" /> όϦσʔγϣϯϧʔϧ໊ </label> <?php } } // ͜Εকདྷతʹෆཁʹ͢Δ༧ఆ add_filter( 'mwform_validation_rules', function( $validation_rules ) { $validation_rules[‘foo’] = new MW_Validation_Rule_Foo(); return $validation_rules; } );
ಠࣗೖྗϑΟʔϧυͷՃ w ͪ͜ΒϑοΫෆཁͰɺ .8@81@'PSN@"CTUSBDU@'PSN@'JFMEΫϥεΛܧঝ͠ ͨΫϥεΛ࡞ΓJODMVEF͢Δ͚ͩͰՃ͞Ε·͢ w ίʔυ͕ͯ͘αϯϓϧ͕ࡌͤΒΕͳ͍ͷͰ͜͜Λ͝ࢀ র͍ͩ͘͞ʜ IUUQTHJUIVCDPNJODNXXQGPSNCMPC NBTUFSDMBTTFTGPSNpFMET
ΧελϜϝʔϧλάͷՃ w ϝʔϧૹ৴࣌ʹΦϦδφϧͷʮϝʔϧλάʯΛఆٛ͢Δػೳ w ྫ͑ϝʔϧ༰ͷઃఆͰ\TFOE@EBUFUJNF^ͱͨ͠ͱ͖ʹૹ ৴࣌ʹม͞Εͯϝʔϧૹ৴ͤ͞Δͱ͍͏͜ͱ͕Մೳ add_filter( 'mwform_custom_mail_tag', function( $value,
$key, $inserted_inquiry_id ) { if ( $key === 'send_datetime' ) { return date( 'Y/m/d l H:i:s' ); } return $value; }, 10, 3 );
ϑΥʔϜ༰ͷܗΛఆٛ͢Δ w $POUBDU'PSNϑΥʔϜ࡞࣌ʹϑΥʔϜͷܗ͕ೖྗ͞ Ε͍ͯ·͕͢.881'PSNͦ͏ͳ͍ͬͯ·ͤΜ w ඞཁͳํϑοΫͰՃͰ͖·͢ /** * ςʔϚ inc/mw-wp-form-default-content.php
Λܗͱͯ͠ར༻͢Δαϯϓϧ */ add_filter( 'mwform_default_content', function( $content ) { ob_start(); get_template_part( 'inc/mw-wp-form-default-content' ); return ob_get_clean(); } );
ϚωλΠζ
ΞυΦϯൢച .881'PSNʹؔ͢Δػೳ։ൃґཔ
ΞυΦϯൢച
͍·ൢച͍ͯ͠Δͷ w .881'PSN(FOFSBUPS ϑΥʔϜ࡞ΛΤσΟλܗࣜͰͳ͘(6*ܗࣜʹมߋ͢Δ σβΠϯͷఏڙɻεΩϯػೳͰସՄೳ ԁ ੫ൈ w
.881'PSN$"15$)" ΩϟϓνϟೝূϑΟʔϧυΛՃ͢Δ ԁ ੫ൈ
ͱͱൢച͍ͯͨ͠ͷ w .881'PSN4UBOEBSE ϑΥʔϜ࡞࣌ʹϑΥʔϜͷܗ͕ೖྗ͞ΕΔΑ͏ʹͳΔ σβΠϯͷఏڙɻεΩϯػೳͰସՄೳ ԁ ੫ൈ
w )5.-ܗࣜͷܗΛఏڙ͢Δܗͩͱ)5.-ߏΛม͑ Δ͜ͱ͕Ͱ͖ͳ͍ͷͰσβΠϯεΩϯͷ࡞ʹ੍ݶ͕ Ͱ͖ͯ͠·͏ w .881'PSN4UBOEBSEΛΊͯɺϢʔβʔ͕)5.- Λҙࣝ͠ͳ͍ܗͰϑΥʔϜ࡞εΩϯͷબ͕Ͱ͖ Δ.881'PSN(FOFSBUPSΛൢച
w ػೳ͕ҧ͏ͷͷɺ࠷ऴతʹϢʔβʔʹఏڙ͢ΔՁ )5.-$44͕ॻ͚ͳͯͬͨ͘ϑΥʔϜ͕࡞Ͱ ͖Δ ΄΅ಉ͡ w ֹ͕ۚഒʹͳΔͷͰൢചݸݮΔͷͰʜ
w ൢചݸʹӨڹͳ͘ɺՁ֨ͷΞοϓʹൺྫͯ͠ച Γ্͛Ξοϓ w (6*ػೳͷఏڙͱ͍͏৽͍͠ՃՁͷՃ͋ͬͨ ͷͷ ಛผ҆͘͠ͳͯ͘ചΕΔͷചΕΔ w ͨͱ͑҆ͨ͘͠΄͏͕ൢചݸ͕૿͑Δͷͩͱͯ͠ɺ ಉ͡ചΓ্͛Λ͋͛Δʹֹۚʹൺྫͨ͠ݸΛചΒͳ
͍ͱ͍͚ͳ͍ͷͰ҆͘͢Ε͍͍ͱ͍͏ͷͰͳ͍ ԁചΓ্͛Δʹ ԁͳΒݸͰ͍͍͕ ԁͳΒݸͷൢച͕ඞཁ
.881'PSNʹؔ͢Δػೳ։ൃґཔ
w ࣄۀചΓ্͛ͷ͍͍ͩͨʙ͘Β͍ .881'PSNΛؚΊαΠτશମͷ։ൃͱ͔͖͋ͬͯͬͪΓΘ͚Εͳ͍ ͷ͋ΔͷͰ͓͓Αͦ w .881'PSNʹؔ͢ΔґཔίϛϡχςΟͳͲͰͱ ͱΓ߹͍ͷํ͔Βͷґཔׂ͕͍͍ͩͨɺશવ໘ࣝ ͷͳ͍ํ͔Βͷґཔׂ͕͍͍ͩͨ w
໘ࣝͷͳ͍ํ͔Βͷґཔ୯ൃɾ୯ػೳͷ߹͕ଟ͍ɻ ͦͷͨΊ͔ґཔ͔Βೲ·Ͱϝʔϧ͚ͩͰ݁͢Δ͜ ͱ͕΄ͱΜͲ
ࠓޙͷల։
ΞυΦϯൢച w ചΓ্্͕͛ΓͤͣԼ͕Γͤͣͳঢ়ଶ͕ଓ͍͍ͯΔ w ݱঢ়ϚʔέςΟϯάͷྨҰ͍ͯ͠ͳ͍ͷͰϦεςΟϯά ࠂͷӡ༻͘Β͍ͯ͠Έ͍ͨͷͰ͕͋͢ͱԿΛ͢Εྑ͍ͷ Ͱ͠ΐ͏ʜʢ࣮ w ෛۀʹൺΔͱ΄΅ख͕͔͔Βׂ͕ͣྑ͍ͷͰ৳͍ͯ͠ ͖͍ͨ
ࠓߟ͍͑ͯΔͷ(FOFSBUPSͷεΩϯՃ*NQPSUFSɾ&YQPSUFSͷ։ൃ w ෛ͕ࣄۀͷओମͳͷͰͳ͔ͳׂ͔͕͚࣌ؒͳ͍ͷ͕
.881'PSNຊମ w ίʔυ͕͋·Γ͔͚ͳ͍ͱ͖͔Βʙ͘Β͍։ൃ͠ଓ͚͍ͯΔ ͨΊٕज़తෛ࠴͕݁ߏ͋ΔɻͰޙํޓੑͷ͜ͱΛߟ͑Δͱม ߋ͕͔ͬͨ͠Γɺ͏ϜϦͳ෦ଟ͍ w ࠓճ࣮ߦϓϩηεΛจࣈىͯ͜͠͠ɺॲཧ͕ൿͷλϨతʹ݁ߏ ෳࡶԽͯ͠ΔͳͱࢥͬͨͷͰɺ͏গ͠γϯϓϧͳํͰϦϑΝΫ λϦϯάΛ͡Ί͍ͯ·͢ɻͰޙํޓੑʜ IUUQTHJUIVCDPNJODNXXQGPSNUSFFGFBUVSF
SFGBDUPSJOH w (JU)VCͰެ։͍ͯ͠ΔͷͰɺJTTVFɾϓϧϦΫେܴͰ͢ʂ IUUQTHJUIVCDPNJODNXXQGPSN