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
250
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
88
Contao Open Source CMS -- CMS大阪夏祭り 2016
taca
0
150
Contao Open Source CMS -- 最新動向: 4.2とその後
taca
0
400
Contao Open Source CMS -- Contao 4.2に向けて
taca
0
100
DNSの名前解決エラー(現在進行中)
taca
0
380
FREQUPS FW-10HとNetBSD
taca
0
150
Other Decks in Technology
See All in Technology
Amazon Bedrock 2025 年の熱いアップデート (2025/3 時点)
icoxfog417
PRO
3
530
最近のラズピッピいじり / 20250308-rpijam-13th-birthday
akkiesoft
0
180
Microsoft_20250311_できるつくれるAIAgent.pdf
iotcomjpadmin
0
110
Db2 SaaS(Db2 on Cloud Gen3)を見てみよう/20250306-Db2SaaS-dojo
mayumihirano
0
100
マネコン操作いらず! TerraformでAWSインフラのコーディングに入門しよう
minorun365
PRO
4
1.2k
書籍『入門 OpenTelemetry』 / Intro of OpenTelemetry book
ymotongpoo
10
660
なぜ「Event Sourcing」を選択したのか〜事実に基づくことの重要性〜/Why did we choose "Event Sourcing"?
bitkey
0
170
Amazon Bedrock Knowledge basesにLangfuse導入してみた
sonoda_mj
2
380
技術を育てる組織・組織を育てる技術 / technology and organization
motemen
7
2.6k
いまから始めるAWS CDK 〜モダンなインフラ構築入門〜/iac-night-cdk-introduction
tomoki10
6
1.6k
LangGraph × Bedrock による複数の Agentic Workflow を利用した Supervisor 型のマルチエージェントの実現/langgraph-bedrock-supervisor-agent
ren8k
4
500
Oracle Cloud Infrastructure IaaS 新機能アップデート 2024/12 - 2025/02
oracle4engineer
PRO
0
130
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Embracing the Ebb and Flow
colly
84
4.6k
Docker and Python
trallard
44
3.3k
The Pragmatic Product Professional
lauravandoore
32
6.4k
GitHub's CSS Performance
jonrohan
1030
460k
The Invisible Side of Design
smashingmag
299
50k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
590
How to Ace a Technical Interview
jacobian
276
23k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Product Roadmaps are Hard
iamctodd
PRO
51
11k
Mobile First: as difficult as doing things right
swwweet
223
9.5k
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 – ݴޠϑΝΠϧͷվળ – ຊޠͷυΩϡϝϯτඋ – ػೳ֦ுͷݴޠϑΝΠϧ • ࠶ར༻ՄೳͳαϯϓϧɾαΠτ