Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Contao Open Source CMS -- 新しいLTSリリースとContao 4.0.2
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Takahiro Kambe
August 08, 2015
Technology
310
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Contao Open Source CMS -- 新しいLTSリリースとContao 4.0.2
オープンソースカンファレンス 2015 Kansai@Kyotoのセミナーで使用した資料です。
Takahiro Kambe
August 08, 2015
More Decks by Takahiro Kambe
See All by Takahiro Kambe
Ruby on pkgsrc affair
taca
0
130
Contao Open Source CMS -- CMS大阪夏祭り 2016
taca
0
190
Contao Open Source CMS -- 最新動向: 4.2とその後
taca
0
440
Contao Open Source CMS -- Contao 4.2に向けて
taca
0
160
DNSの名前解決エラー(現在進行中)
taca
0
470
FREQUPS FW-10HとNetBSD
taca
0
200
Other Decks in Technology
See All in Technology
FactoryBotアンチパターン / factory_bot anti-patterns
toshimaru
0
160
AIがコードを書く時代に、エンジニアは何で自分の価値を証明するのか / In an era where AI writes code how do engineers prove their value
carta_engineering
3
930
DevelopersIO 2026 知識の地図を描く ─ オントロジーとは何か?
ishikawa_satoru
1
1.5k
Jetson Orin Nanoとk3sとローカルLLMで音声文字起こしシステム作ってみた
y_sera15
0
120
AIにシークレットを見せない、WSL2で安全な開発環境
yazm
0
160
Datadog の学び方 - あるいは、オブザーバビリティを学ぶとは何か
mananyuki
1
560
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
370
AI時代だからこそ推したい!Gitコマンド再入門
munakata
0
190
会社説明資料
persolserverworks
0
9.7k
パッチ更新でterraform initが落ちた日
grimoh
1
130
Rustuna: Rustによる高速なOptuna実装
pfn
PRO
0
120
WasmをRustにする
sansantech
PRO
0
220
Featured
See All Featured
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
2
940
Side Projects
sachag
456
43k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
2
6.3k
Making the Leap to Tech Lead
cromwellryan
135
10k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
620
Code Reviewing Like a Champion
maltzj
529
40k
Technical Leadership for Architectural Decision Making
baasie
3
600
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
300
30 Presentation Tips
portentint
PRO
1
430
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
410
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
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 – ݴޠϑΝΠϧͷվળ – ຊޠͷυΩϡϝϯτඋ – ػೳ֦ுͷݴޠϑΝΠϧ • ࠶ར༻ՄೳͳαϯϓϧɾαΠτ