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
Contao Open Source CMS -- 新しいLTSリリースとContao 4.0.2
Search
Takahiro Kambe
August 08, 2015
Technology
0
220
Contao Open Source CMS -- 新しいLTSリリースとContao 4.0.2
オープンソースカンファレンス 2015 Kansai@Kyotoのセミナーで使用した資料です。
Takahiro Kambe
August 08, 2015
Tweet
Share
More Decks by Takahiro Kambe
See All by Takahiro Kambe
Ruby on pkgsrc affair
taca
0
77
Contao Open Source CMS -- CMS大阪夏祭り 2016
taca
0
140
Contao Open Source CMS -- 最新動向: 4.2とその後
taca
0
390
Contao Open Source CMS -- Contao 4.2に向けて
taca
0
85
DNSの名前解決エラー(現在進行中)
taca
0
350
FREQUPS FW-10HとNetBSD
taca
0
140
Other Decks in Technology
See All in Technology
事業貢献を考えるための技術改善の目標設計と改善実績 / Targeted design of technical improvements to consider business contribution and improvement performance
oomatomo
0
160
DevFest 2024 Incheon / Songdo - Compose UI 조합 심화
wisemuji
0
160
Storage Browser for Amazon S3
miu_crescent
1
300
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
290
Amazon Kendra GenAI Index 登場でどう変わる? 評価から学ぶ最適なRAG構成
naoki_0531
0
140
React Routerで実現する型安全なSPAルーティング
sansantech
PRO
2
300
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
300
プロダクト開発を加速させるためのQA文化の築き方 / How to build QA culture to accelerate product development
mii3king
1
290
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
200
[JAWS-UG新潟#20] re:Invent2024 -CloudOperationsアップデートについて-
shintaro_fukatsu
0
120
AWS re:Invent 2024 recap
hkoketsu
0
120
サーバーなしでWordPress運用、できますよ。
sogaoh
PRO
0
130
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Rails Girls Zürich Keynote
gr2m
94
13k
Become a Pro
speakerdeck
PRO
26
5k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
Making the Leap to Tech Lead
cromwellryan
133
9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
What's in a price? How to price your products and services
michaelherold
244
12k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
Transcript
Contao Open Source CMS 新しいLTSリリースとContao 4.0.2 オープンソースカンファレンス 2015 Kansai@Kyoto 2015年
8月 8日 ຊContaoͷձ: ਆށོത
ͷީิ • Contaoͷ֓ཁ • αΠτͷσβΠϯ • ίϯςϯτཁૉ
• Πϯετʔϧํ๏ • ࠷ۙͷϦϦʔε • Contaoͷؔ࿈ϦϯΫ
ൃදऀʹ͍ͭͯ • ContaoͱͷؔΘΓ – 20087݄ࠒ ϒϩάͰͳ͍ϚϧνυϝΠϯͷCMSΛٻΊͯ • 2.6.BETAͷࠒ – 20112݄
ຊޠͷݴޠϑΝΠϧ୲ – 20123݄ Ambassadors in Japan (ળେ) • Φʔϓϯιʔεͱࢲ – NetBSD։ൃऀ(pkgsrc)ɺ20008݄͔Β – ຊޠ༁
$POUBPͷ֓ཁ
$POUBPͱԿ͔ • ΦʔϓϯιʔεͷCMS – 20063݄12: 2.0.RC͔Βެ։ – LGPL3
– ༻ϥΠηϯε͋Γ • ϖʔδͷιʔεͰContaoΛ༻͍ͯ͠ΔදࣔΛআ – metaλάͷgenerator • ιʔείʔυ͔Βஶ࡞ݖදࣔΛআ – ެࣜαΠτ: hKps://contao.org/ – ։ൃݩ: υΠπ – ݩͷ໊લ: TYPOlight (2.8·Ͱ) • light͔Βܰྔ൛ͱ͔খنαΠτઐ༻ͱޡղ
ࣈͰݟΔ$POUBP • μϯϩʔυ – 20155݄18Ͱ1,038,049 • 20138݄30·Ͱsourceforge.net • download.contao.org͔Βͷμϯϩʔυ –
Contao Check – ެࣜαΠτͷμϯϩʔυ • github.com͔Βͷμϯϩʔυআ֎ • WebαΠτ – 70,000ͷαΠτ • CMSCrawler • Live Update Serverͷϩά
ϚʔέοτγΣΞ • ϚʔέοτγΣΞ(by CMSCrawler) – 770γεςϜத12Ґ(લճ: 7Ґ) • υΠπ:
6Ґ(લճ: 8Ґ) 2.02% • ΦʔετϦΞ: 5Ґ(લճ: 6Ґ) 2.39% • εΠε: 6Ґ(લճ: 8Ґ) 1.80% • ਓؾ: ୈ3Ґ(by webkrauts) • WordPress 62% • TYPO3 27% • Contao 23% • Drupal 15% • Joomla! 9%
໊લͷ༝དྷ • ϕτφϜޠͷconͱtạoͷޠ – tạo • ܗΛͳ͢ɺ͢Δͱ͍ͬͨҙຯͷϕτφϜޠ – con
tạo • ࡞ऀɺӡ໋͚ͮΔͱ͍ͬͨҙຯ • ίϯςϯπʹ௨͡Δ – ໊Ͱͳ͍ • ϦϦʔε2.9͔Βվ໊
$POUBPͷಛ • όοΫΤϯυͱϑϩϯτΤϯυ – ެ։͢ΔαΠτʹґଘ͠ͳ͍Ұ؏ͨ͠ը໘ߏ • ֊ߏʹΑΔϖʔδͷཧ • ίϯςϯτཁૉ
– ίϯςϯπΛෳͷछྨͷύʔτͰߏ • ΞΫηγϏϦςΟͷߟྀ • ػೳ֦ு – ػೳ֦ுϦϙδτϦʹΑΔཧ – ຊମͷมߋෆཁ
ࣄྫ • hKps://contao.org/en/case-‐studies.html
େنͳػೳ֦ுͷྫ • Isotope – ిࢠऔҾ – hKps://isotopeecommerce.org/
ಈ࡞ڥ • Webαʔόʔ – Apache(, IIS) • εΫϦϓςΟϯάݴޠ –
Contao 3.2ͰPHP 5.3.2Ҏ߱ – Contao 3.5/4.0ͰPHP 5.4.0Ҏ߱ • ඞཁͳ֦ு: mysqli(·ͨmysql), dom, gd, mbstring(·ͨiconv), mcrypt, soap, curl, zlib • σʔλϕʔεཧγεςϜ – MySQL 5.0.3Ҏ߱ • ଞͷσʔλϕʔεͷαϙʔτ3.0ͰҰ୴ഇࢭ
֤ࠃޠରԠ • ݴޠϑΝΠϧຊମʹಉࠝ – Contao 3.5.2Ͱ24ͷݴޠɺ4.0.2Ͱ16ͷݴޠ • TransifexͰ95%Ҏ্ͷ༁Ͱ࠾༻ɺ95%ະຬͰআ • ػೳ֦ுͰఏڙՄೳ
• PHPͷྻΛϕʔε – ϝοηʔδΧλϩά(geKext)ෆ༻ – UTF-‐8 – ઃఆϑΝΠϧͰ༁ͷՃमਖ਼͕Մೳ – Contao 3.3͔ΒXLIFF(XML Localizagon Interchange File Format)Λ༻ → ྻʹมͯ͠Ωϟογϡ
ϦϦʔεͷछྨ • όʔδϣϯX.Y.Z – ϝδϟʔϦϦʔε(X) •
͋ΒΏΔมߋͷՄೳੑ • ֓Ͷ2ʹ1(201210݄30ͷ3) – ϚΠφʔϦϦʔε(Y) • APIɺσʔλߏɺςϯϓϨʔτʹมߋͷՄೳੑ • ɺ5݄ͱ11݄(20156݄ͷ3.5) – όάमਖ਼ϦϦʔε(Z) • جຊతʹόάमਖ਼͚ͩ→ ্Ґޓͳमਖ਼͚ͩ • ਵ࣌(֓Ͷ݄ʹ1ఔ)
ϦϦʔεͷछྨ • ظؒαϙʔτϦϦʔε(LTS): 3.5 – 18͔݄ؒͷอकظؒͷϚΠφʔϦϦʔε •
جຊతʹόάमਖ਼͚ͩ – Ճ͑ͯ6͔݄ͷҠߦظؒ: 3.2 • ηΩϡϦςΟमਖ਼͚ͩ • ։ൃ൛: 4.0 – 20156݄ϦϦʔε༧ఆ – ͔݄͔Β1Ҏ্ͷ։ൃظؒ
ݱࡏͷϦϦʔε • $POUBP -54Ҡߦஈ֊ – ݄
• $POUBP ҆ఆ൛-54 – ݄ • $POUBP ҆ఆ൛ – ݄
ϦϦʔε༧ఆ • hKp://contao.org/release-‐plan.html
όοΫΤϯυͱϑϩϯτΤϯυ • WebαΠτͷཧଆͱެ։ଆ – ཧଆ: όοΫΤϯυ(BE) – ެ։ଆ: ϑϩϯτΤϯυ(FE)
– όοΫΤϯυͰཧͯ͠ɺ ϑϩϯτΤϯυΛϓϨϏϡʔ→ ެ։ • URL – FE: hKp://www.example.jp/ – BE: hKp://www.example.jp/contao/
ϑϩϯτΤϯυͷྫ • ࣄྫͰڍ͛ͨͷͯ͢ϑϩϯτΤϯυ
όοΫΤϯυ
ϗʔϜ
όοΫΤϯυͷߏ • 3ͭͷ෦ – ϔομʔɺࠨαΠυɺϝΠϯ – Ϣʔβʔݖݶͷͳ͍ͷඇදࣔ • ςʔϚઃఆՄೳ –
ϑϩϯτΤϯυͷදࣔͱແؔ – flexibleόοΫΤϯυςʔϚ • Contao 3.3Ҏ߱ͷσϑΥϧτͷςʔϚ • Contao 3.2·ͰͷdefaultʹՃ • Ϩεϙϯγϒ
όοΫΤϯυͷ6*ͷಛ • ओʹ3ͭͷදࣔܗࣜ – Ϧετදࣔ – ϖΞϨϯτදࣔ – πϦʔදࣔ
– ͦΕͧΕͰڧྗͳฒସ͑ɺϑΟϧλʔɺݕࡧ • όοΫΤϯυશମͷҰ؏ੑ – ૢ࡞͢ΔͨΊͷΞΠίϯͷ࣋ͭҙຯ
Ϧετදࣔ
ϖΞϨϯτදࣔ
πϦʔදࣔ
ฤूͷදࣔྫ
ϓϨϏϡʔ ৽͍͠Οϯυ
ίϯςϯπ • ࣮ࡍͷίϯςϯπΛཧ – ΞʔςΟΫϧ • ϖʔδʹදࣔ͢Δ༰ – ϑΥʔϜδΣωϨʔλʔ •
ϑϩϯτΤϯυͷϑΥʔϜΛࣗ༝ʹ࡞ – ίϝϯτ • ଞͷίϯςϯπͰϑϩϯτΤϯυ͔Βೖྗ͞Εͨίϝϯτͷཧ – ͦͷଞɺಛఆͷछྨͷίϯςϯπ
ϨΠΞτ • ϖʔδͷஔܗͷσβΠϯ – ςʔϚ: ҎԼΛ·ͱΊͯཧ • ελΠϧγʔτ • ϑϩϯτΤϯυϞδϡʔϧ
• ϖʔδϨΠΞτ – αΠτߏ • ϖʔδΛ֊తʹཧ – ςϯϓϨʔτ • ΧελϚΠζͨ͠ςϯϓϨʔτͷϑΝΠϧͷཧ
ΞΧϯτཧ • Ϣʔβʔʹؔ࿈ͷཧ – ϝϯόʔ • ϑϩϯτΤϯυͷϢʔβʔ – ϝϯόʔάϧʔϓ •
ϑϩϯτΤϯυͰอޢ͞Εͨϖʔδʹ༻ – Ϣʔβʔ • όοΫΤϯυͷϢʔβʔ – Ϣʔβʔάϧʔϓ • όοΫΤϯυͷݖݶͷཧ • Ϣʔβʔʹରͯ͠ϢʔβʔάϧʔϓͱΈ߹ΘͤͯݖݶઃఆΛՄ ೳ
γεςϜ • ઃఆϦιʔεͷཧ – ϑΝΠϧཧ • ίϯςϯπͰ༻͢Δը૾ಈը • ϑϩϯτΤϯυͰΞοϓϩʔυ •
TinyMCE͔Βݺͼग़͠Մೳ – ઃఆ • Contaoͷશମͷઃఆ – อक • ΩϟογϡͷফڈϥΠϒΞοϓσʔτ – ػೳ֦ுΧλϩάͱػೳ֦ுͷཧ • ػೳ֦ுΛϦϙδτϦ͔ΒҰཡɺΠϯετʔϧɺߋ৽
։ൃऀπʔϧ • ։ൃऀ͚ͷπʔϧ – autoloadͷ࡞ • ݹ͍ػೳ֦ுͰɺautoloadΛ༻ҙ͢Δͱಈ࡞͢Δ߹͕͋Δɻ – ػೳ֦ுͷ࡞
• ػೳ֦ுͷܗͷ࡞ – ෆϥϕϧ • ະ༁ͷݴޠϥϕϧͷ֬ೝ
$POUBPͱίϯςϯπ
σβΠϯ
ΣϒαΠτͷσβΠϯ
ϖʔδ • 6ͭͷछྨ – ௨ৗϖʔδ – ෦ϦμΠϨΫτ – ֎෦ϦμΠϨΫτ
– 403 ΞΫηεڋ൱ – 404 ଘࡏ͠ͳ͍ϖʔδ – ΣϒαΠτͷϧʔτ • υϝΠϯͱݴޠͷࢦఆ͕Մೳ
ϖʔδͷ֊ͱઃఆ • ֊ߏ – ͷઃఆ߲ͷܧঝ • υϝΠϯͱݴޠʹԠͨ͡ϖʔδ֊ – ϚϧνυϝΠϯͷαϙʔτ
– ଟݴޠαΠτͷαϙʔτ • શମతͳઃఆͰURLύεʹݴޠίʔυΛՃՄೳ – hKp://www.example.jp/ja hKp://www.example.jp/en
ϖʔδͷઃఆ߲ • ϖʔδͷઃఆ – ϖʔδϨΠΞτ – ΞΫηεݖ • όοΫΤϯυͱϑϩϯτΤϯυͦΕͧΕ
– Ωϟογϡ • ϖʔδ୯ҐͷΩϟογϡ – ެ։ઃఆ – αΠτϚοϓφϏήʔγϣϯͷදࣔ
ϖʔδϨΠΞτ • ϖʔδʹؚΊΔ༰ͷఆٛ – ΧϥϜߏ • ΧελϜηΫγϣϯ – ֤ΧϥϜͷஔ༰
• ΞʔςΟΫϧϑϩϯτΤϯυϞδϡʔϧ – ελΠϧγʔτͷϑϨʔϜϫʔΫ – ؚΊΔελΠϧγʔτ: ෦ͱ֎෦ – jQueryMooToolsͷಡΈࠐΈ
ϑϩϯτΤϯυϞδϡʔϧ • ଞͷCMSͰͷϒϩοΫʹ૬ – φϏήʔγϣϯ • ϝχϡʔɺύϯͣ͘ɺϒοΫɺαΠτϚοϓ – ϑϩϯτΤϯυͷϢʔβʔ
• ొɺϩάΠϯɺݸਓσʔλɺΞΧϯτഇࢭ – ίϯςϯπͷҰཡදࣔ • χϡʔεɺΠϕϯτɺFAQɺχϡʔεϨλʔ – ΞϓϦέʔγϣϯ • ϑΥʔϜɺϖʔδݕࡧɺίϝϯτɺϦεςΟϯά – ͦͷଞ • FlashಈըɺϥϯμϜͳը૾ɺHTMLɺRSSදࣔ
ελΠϧ • ελΠϧγʔτͷϑϨʔϜϫʔΫ – ΧϥϜߏϨεϙϯγϒදࣔͷΈ • ελΠϧγʔτ – ෦
• σʔλϕʔεͰอ࣋ • GUIͰฤू – ֎෦ • ϑΝΠϧཧʹϑΝΠϧΛஔ • ϑΝΠϧཧͰฤू • LESSSCSSͷϑΝΠϧࢦఆՄೳ
ςϯϓϨʔτ • ͯ͢ͷग़ྗςϯϓϨʔτΛܦ༝ – طଘͷςϯϓϨʔτ • Contaoͷʹؚ·Ε͍ͯΔݪ൘ – ΧελϚΠζ༻ͷςϯϓϨʔτ
• ݪ൘Λίϐʔͯ͠ΧελϚΠζ • ΧελϚΠζ൛͕͋Ε༻ • ΧελϚΠζͨ͠ςϯϓϨʔτ – ݸʑͷϑϩϯτΤϯυϞδϡʔϧͰࢦఆ – ݸʑͷίϯςϯτཁૉͰࢦఆ
ςʔϚ • ҎԼΛ·ͱΊͨͷ – ϖʔδϨΠΞτ – ελΠϧγʔτ – ϑϩϯτΤϯυϞδϡʔϧ
– ςϯϓϨʔτ – ؔ࿈ϑΝΠϧ • ΤΫεϙʔτΠϯϙʔτ͕Մೳ – .ctoͷ֦ுࢠ(ͷzipϑΝΠϧ) – ΠϯϙʔτޙɺϖʔδχϡʔεͷΞʔΧΠ ϒͱͷ౷߹࡞ۀ͕ඞཁ
ίϯςϯπ
ΣϒαΠτͷίϯςϯπ
ίϯςϯπͷछྨ • ΞʔςΟΫϧ – ಛఆͷϖʔδʹஔ͘ίϯςϯπ • ίϯςϯτཁૉͰߏ •
χϡʔεɺΠϕϯτɺFAQɺχϡʔεϨλʔ – ಛఆͷ୯Ґ(ΞʔΧΠϒ)Ͱอ࣋͢Δίϯςϯπ • ϑϩϯτΤϯυϞδϡʔϧͰϖʔδ্ʹදࣔ • χϡʔεͱΠϕϯτίϯςϯτཁૉͰߏ • χϡʔεϨλʔ – ϝʔϧϚΨδϯతͳిࢠϝʔϧͰͷ৴ – ৴ͨ͠هࣄͷWeb্Ͱͷެ։
ίϯςϯτཁૉ • ΞʔςΟΫϧɺχϡʔεɺΠϕϯτͷ༰ – ίϯςϯπΛߏ͢Δॱংʹ͚ͯߏ – ίϯςϯτཁૉʹదͳςϯϓϨʔτͷద༻ • ΞΫηγϏϦςΟ •
෦ݕࡧΤϯδϯͷࢦࣔ – ίϯςϯπͷ࠶ར༻ɾޮతͳར༻ • ಉ͡ίϯςϯτཁૉͷڞ༗ • ଞͷίϯςϯτཁૉͷऔΓࠐΈ – ίϯςϯτཁૉ୯Ґͷެ։
ίϯςϯτཁૉͷछྨ • HTMLͷཁૉ – ݟग़͠ɺςΩετ(ϦονςΩετฤू)ɺHTML – Օॻ͖ɺදɺ(ϓϩάϥϜͷ)ίʔυɺMarkdown •
ϦϯΫ – ϋΠύʔϦϯΫɺτοϓϦϯΫ • ϑΝΠϧ – μϯϩʔυɺෳμϯϩʔυ
ϝσΟΞදࣔͷ੍ޚ • ը૾ಈը – ը૾ɺը૾ΪϟϥϦʔɺө૾ԻɺYouTubeಈը • ίϯςϯτཁૉͷද੍ࣔޚ – ΞίʔσΟΦϯɺίϯςϯτεϥΠμʔ •
ଞͷίϯςϯπͷऔΓࠐΈ – ΞʔςΟΫϧɺίϯςϯτཁૉɺϞδϡʔϧɺ ΞʔςΟΫϧͷςΟʔβʔ – ϑΥʔϜɺίϝϯτ
ϑΥʔϜ • ϑΥʔϜδΣωϨʔλʔ – ࣗ༝ʹϑΥʔϜΛ࡞ – ϑΥʔϜͷఏग़༰ͷॲཧ • ϝʔϧͰૹ৴
• ༧Ί༻ҙͨ͠σʔλϕʔεͷςʔϒϧʹ֨ೲ
ૠೖλά • {{ ͱ }} ͰғΜͩϚΫϩͷΑ͏ͳͷ – ϦϯΫཁૉ •
ϖʔδχϡʔε߲ͷϦϯΫʹؔ͢Δͷ – Ϣʔβʔͷଐੑ • ϩάΠϯ͍ͯ͠ΔϑϩϯτΤϯυϢʔβʔͷใ – ڥม • ΫϥΠΞϯτͷIPΞυϨεͷڥม – ཁૉͷऔΓࠐΈ • ଞͷΞʔςΟΫϧίϯςϯτཁૉΛల։ – ͦͷଞ • ݱࡏͷ࣌ݴޠʹج͍ͮͨ݅ॲཧ
$POUBPͷΠϯετʔϧͱߋ৽
Πϯετʔϧͷ४උ • ApacheɺPHPͷઃఆ • σʔλϕʔεͷ४උ – σʔλϕʔεͷ࡞ – σʔλϕʔεͷϢʔβʔͷ࡞ •
ιϑτΣΞͷμϯϩʔυͱల։ – ख࡞ۀͰμϯϩʔυɺల։ɺΞοϓϩʔυ – ύοέʔδγεςϜͷར༻(pkgsrc) – ContaoνΣοΫͷར༻Մೳ
$POUBPνΣοΫ • Πϯετʔϧͷࢧԉπʔϧ – ContaoͷΠϯετʔϧʹؔ͢Δݕࠪ • ContaoͷόʔδϣϯʹԠͨ͡ΠϯετʔϧͷՄ൱ – Πϯετʔϧޙͷػೳͷར༻Մ൱ •
ػೳ֦ுϦϙδτϦ • ϥΠϒΞοϓσʔτ • ηʔϑϞʔυରॲͷඞཁੑ – ContaoͷϑΝΠϧͷऔಘͱల։ • μϯϩʔυɺల։ɺΞοϓϩʔυͱ͍ͬͨखॱΛࣗಈ࣮ߦ • ల։ͨ͠ϑΝΠϧͷ༰ͷݕࠪ • Contao 4.0ʹඇରԠ – PHPͷgeKext֦ு(ଟݴޠදࣔ)
Πϯετʔϧ • Πϯετʔϧπʔϧ – hKp://example.jp/contao/install.php – ஈ֊Ͱઃఆ • σʔλϕʔεͷଓ֬ೝςʔϒϧ࡞ •
Ξοϓσʔτ։ൃͰ͏߹ • ηΩϡϦςΟ – ࠷ॳʹύεϫʔυΛઃఆ – ෆ҆ͳ߹install.phpΛআ໊લมߋΛ࣮ࢪ
ϥΠϒΞοϓσʔτ • hKps://update.contao.org/ – iNet RobotsࣾʹΑΔ༗ঈαʔϏε – ֹ10Ϣʔϩ • υΠπͷച্੫19%ࠐΈɺͦΕΛআ͍ͨຊԁͰ1200ԁऑ
• Πϯετʔϧͨ͠1ͭͷContaoʹରͯ͠1ϥΠηϯε͕ඞཁ • ϚεճͷΫϦοΫͰߋ৽ – Πϯετʔϧઌͷόʔδϣϯͷબ • ৽͍͠όάमਖ਼ϦϦʔε • ৽͍͠ϚΠφʔϦϦʔε • ҎલͷϦϦʔε – όοΫΞοϓͷ࡞
࠷ۙͷϦϦʔε
$POUBP • 20156݄5ϦϦʔε: 3.5.0 – ৽͍͠ظαϙʔτϦϦʔε – PHP 5.4Ҏ߱
• 20157݄24όάमਖ਼ϦϦʔε: 3.5.1 • 20157݄24όάमਖ਼ϦϦʔε: 3.5.2
͍։͖λά – PHP 5.4Ҏ߱ͰσϑΥϧτͰ༗ޮ <? • <?php echo – ςϯϓϨʔτͷՄಡੑͷ্
今まで: <div class=“<?php echo $this->class; ?>”> <h1><?php echo $this->headline; ?></h1> <p class=“<?php echo $this->cssClass; ?>”><?php echo $this->content; ?></p> </div> これから: <div class="<?= $this->class ?>"> <h1><?= $this->headline ?></h1> <p class="<?= $this->cssClass ?>"><?= $this->content ?></p> </div>
ςϯϓϨʔτൺֱ • ςϯϓϨʔτͷൺֱදࣔ – ςϯϓϨʔτͷΦϦδφϧΛදࣔ – ΧελϚΠζ൛ͱΦϦδφϧͷൺֱදࣔ – ಉάϧʔϓ(ΧςΰϦ)ͷผͷςϯϓϨʔτͱൺֱ
ύεϫʔυมߋ • ύεϫʔυมߋͷϑϩϯτΤϯυϞδϡʔϧ – ʮݸਓใʯͰมߋࣗମՄೳ • ݱࡏͷύεϫʔυͷݕূͳ͠ – ݱࡏͷύεϫʔυݕূ
γϑτΩʔͰબ • γϑτΩʔΛԡ͠ͳ͕ΒબΛมߋ
ϖʔδ • 404 ଘࡏ͠ͳ͍ϖʔδ – ϖʔδͷछྨͷ1ͭ – ໊લͷ௨Γɺଘࡏ͠ͳ͍ϖʔδ – ༻͞Εͳ͍߹͕͋ͬͨ: • ෆਖ਼ͳϖʔδͷΤΠϦΞε
• ෆਖ਼ͳχϡʔε߲ΠϕϯτͷΤΠϦΞε • ϖʔδωʔγϣϯͰෆਖ਼ͳϖʔδͷબ • ෆਖ਼ͳ
ͦͷଞ • χϡʔεϨλʔͷѼͯઌ – ҟͳΔνϟϯωϧؒͰѼͯઌΛҠಈ • ผͷχϡʔεϨλʔͷؒͰΞυϨεΛҠಈ • ҠಈઌͰखಈͰՃͷѻ͍ –
Ϣʔβʔࣗʹొͷ߹μϒϧɾΦϓτΠϯඞਢ • ෦తͳมߋ – ϞσϧɾϨδετϦ • σʔλϕʔεͷ͍߹Θͤͷݮ – σʔλϕʔεͷΠϯσοΫεͷվળ – IDEޓੑ
$POUBP • 20156݄9ʹϦϦʔε: 4.0.0 – PHP 5.4Ҏ߱ – Symfony౷߹
• Contao Konferenz 2015ͷجௐߨԋ – hKps://leofeyer.com/files/slides/2015/konferenz/ • υΠπޠ • Google Translagon֦ுͰӳ༁Մೳ
$POUBPͷಛ • SymfonyҎ֎ͷಛ – schema.orgͷλάͷऔΓࠐΈ – ͯ͢ͷϑΥʔϜͷ߲ͷϚʔΫΞοϓͷ౷߹ – CSSͷΫϥεͱΟδΣοτͷ౩ο
– TinyMCEͷߏͷվળ – ݹ͍Ϧιʔεͷഇࢭ • ηʔϑϞʔυରॲ • XHTML – ͦͷଞ
ͳͥ4ZNGPOZ • جຊతͳ – Contaoͷ։ൃऀ͕গͳ͍ɻ – 201210݄ͷContao 3.0Ҏ߱ɺ։ൃऀʹΑΓՃ ͞Εͨ৽͍͠ػೳΘ͔ͣͰ͋Δɻ
– ҰํͰPHPքͰ৽͍͠ைྲཱྀ͕֬ • ύοέʔδཧ(Composer) • ܧଓతΠϯςάϨʔγϣϯ(PHPUnit, Travis) • ίʔυղੳ(Scrugnizer, SensioLabsInsight)
։ൃऀͷཁ • ৽͍ٕ͠ज़ͷར༻ͱै • ղܾࡦ – SymfonyΛ৽͍͠ίʔυϕʔε – ৽͍͠πʔϧΛඪ४ͱͯ͠౷߹
– Symfony͘ར༻͞ΕɺυΩϡϝϯτԽ – ݱࡏɺ2500Ҏ্ͷSyfonyόϯυϧ
݁Ռ • Contao 4Symfonyͷόϯυϧ – SymfonyΞϓϦέʔγϣϯʹCMSͷػೳΛఏڙ • ར
– ʮ࠷ऴతͳʯSymfonyΞϓϦέʔγϣϯͷ ··Ͱ͋Δɻ – ݁Ռͱͯ͠ɺͦΕͧΕͷSymfony։ൃऀContao Λѻ͏࡞ۀΛߦ͑Δɻ – ৽͍͠ίʔυSymfonyͷඪ४ʹैͬͯίʔσΟ ϯάͱςετ͕ͳ͑͞Δɻ
γφδʔޮՌ • Contao 4ͱɺCMSػೳ͕ඞཁͳ SymfonyΞϓϦέʔγϣϯͷग़ձ͍ • ظ
– RedkiteSimpleCMSͷΑ͏ͳஶ໊ͳSymfonyϕʔ εͷCMSʹରͯ͠ɺContao͕ผͷબࢶ – طʹSymfonyΛѻ͍ͬͯΔ৫͕ContaoΛऔΓѻ ͍ʹՃ – Contaoͷ։ൃʹܞΘΔ৫͕ɺ৽͍͠Contaoͷ։ ൃऀΛಘΔ
5JOZ.$&ͷςϯϓϨʔτ • ઃఆϑΝΠϧͱͯ͠ͷςϯϓϨʔτ – ैདྷ: ϑΝΠϧσΟϨΫτϦʹΞοϓϩʔυ – ࠓޙ:
ςϯϓϨʔτͷ1ͭ • ར – όοΫΤϯυͰฤूՄೳ – Ξοϓσʔτ࣌ʹมߋอ࣋ – DCAͷௐ͕ෆཁ
TDIFNBPSH • WebϖʔδͷίϯςϯπʹϥϕϧΛ͚ – ඪ४Խ͞ΕͨϚʔΫΞοϓݴޠ(ϚΠΫϩσʔλ) • ར – ݕࡧΤϯδϯʹΑΔίϯςϯπͷΠϯσοΫε
Λվળ – ݕࡧ݁ՌʹՃՁ(schema.orgͷRich Snippetsͷ ༻࣌) – Contao 4Ͱඪ४
දΛ༻͠ͳ͍ • ʮදΛ༻͠ͳ͍ϨΠΞτʯͷઃఆͷഇࢭ – ͯ͢tableΛ༻͠ͳ͍ϑΥʔϜ – ৽͍͠ελΠϧγʔτͷϑϨʔϜϫʔΫ • form.css
– ඪ४ͷॻࣜ • ߲ͷ্ʹϥϕϧ – CSSͷΫϥε: horizontal-‐form • ϥϕϧͱಉ͡ߦʹ߲ – CSSͷΫϥε: inline • ͯ͢Λಉ͡ߦ
υΩϡϝϯτϧʔτ • ContaoΛల։ͨ͠σΟϨΫτϦ͔Βมߋ – ԼҐͷσΟϨΫτϦ: web • ར
– ϑΥϧμʔͷอޢʹ.htaccessʹཔΒͳ͍ɻ – ApacheҎ֎(nginx)ͷରԠ • ҙ – webσΟϨΫτϦҎԼʹγϯϘϦοΫϦϯΫ • γϯϘϦοΫϦϯΫΛḷΔΞΫηεͷڐՄ • PHPͰγϯϘϦοΫϦϯΫ࡞͕Մೳͳ͜ͱ
ഇࢭ • ηʔϑϞʔυରॲ – γϯϘϦοΫϦϯΫඞਢʹ͖ͭରԠෆՄ • XHTMLͷαϙʔτ – HTML520116݄1ͷTYPOlight
2.10.beta1͔Β • IE6ͷܯࠂ • ཁૉͷલޙͷεϖʔε – ͪΌΜͱCSSͰ͠Α͏Ͷɻ
$POUBP • ݱঢ়ͷ੍ݶ – Contao 3͔ΒͷΞοϓάϨʔυͳ͠! – ComposerʹΑΔΠϯετʔϧ
% php composer.phar create-‐project contao/standard-‐edigon <target> 4.0.0 • WebϕʔεͷΠϯετʔϧπʔϧࠓޙͷ՝ – TwigςϯϓϨʔτͷར༻ – ΠϕϯτͱϑοΫͷSymfonyͷػߏͷҠߦ – ݴޠϑΝΠϧӳޠ͚ͩ
$POUBP • 20157݄24ʹϦϦʔε – ༷ʑͳόάमਖ਼ – ੍ݶࣄ߲4.0.0ͱมΘΒͣ
$POUBP • 20158݄5ʹϦϦʔε – एׯͷόάमਖ਼ • Πϯετʔϧπʔϧͷ෮׆ – ϑΝΠϧ͕෮׆ɺComposerཁΒͳ͍ɻ
• Contao 3.2Ҏ͔߱ΒΞοϓάϨʔυՄೳ • ݴޠϑΝΠϧ – 16͔ࠃޠΛಉࠝ • Πϯετʔϧπʔϧ͚ͩӳޠ͚ͩ
ϩʔυϚοϓ • Contao 4.0.0 20155݄ 6݄ •
Contao 4.1.0 201511݄ • Contao 4.2.0 20165݄ • Contao 4.3.0 LTS 201611݄
$POUBPͷؔ࿈ใ
ެࣜαΠτ • ެࣜαΠτ: hKps://contao.org/ • ։ൃαΠτ: hKps://github.com/contao/ • ϑΥʔϥϜ:
hKps://community.contao.org/ • Contao Associagon: hKps://associagon.contao.org/ • ࣄྫݚڀ: hKps://contao.org/case-‐studies.html • ίϛϡχςΟʹΑΔWiki: hKp://contaowiki.org/ • ιʔγϟϧωοτϫʔΫ – Facebook: hKp://www.facebook.com/contao – TwiKer: hKp://twiKer.com/contaocms
ॻ੶ • ॻ੶: (΄΅)ͯ͢υΠπޠ
ࠃͷใ • hKp://www.contaocms.jp/ – ݸਓαΠτ • hKps://www.facebook.com/groups/contao.jp – ຊContaoͷձ:
Facebookͷάϧʔϓ͚ͩ – hKp://contao.jp/ Λ༧ఆ • Facebook – ຊContaoͷձͷެ։άϧʔϓ • TwiKer – @contaocms_jp / @contao_cco
ຊ$POUBPͷձ • ؇͍ϢʔβʔάϧʔϓΛࢦ • Facebookʹެ։άϧʔϓ • WebαΠτ४උத
• ڠྗऀઈࢍืूத
ػೳ֦ுͷݴޠϑΝΠϧ • contao.orgͷΦϯϥΠϯɾτϥϯεϨʔλʔ – contao.orgʹΞΧϯτ࡞ • ະ༁ͷݴޠϑΝΠϧΛొ •
ࣗಈతʹػೳ֦ுʹө
ػೳ֦ுͷݴޠϑΝΠϧ ଓ͖ • Transifex – ػೳ֦ுʹґଘ – TransifexʹΞΧϯτ࡞
• ಛఆͷݴޠ(ຊޠ)ͷ༁Λਃ • ࣍ͷϦϦʔεʹө • GitHub – ػೳ֦ுʹґଘ – ݴޠϑΝΠϧΛpull request
ڠྗऀઈࢍืूத • WebαΠτͷ্ཱͪ͛ • υΩϡϝϯτ – ެࣜϚχϡΞϧͷຊޠ൛ • hKps://docs.contao.org/
ʹϦϯΫ • ϚχϡΞϧࣗମgitbook – ݴޠϑΝΠϧͷվળ – ຊޠͷυΩϡϝϯτඋ – ػೳ֦ுͷݴޠϑΝΠϧ • ࠶ར༻ՄೳͳαϯϓϧɾαΠτ