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
240
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
82
Contao Open Source CMS -- CMS大阪夏祭り 2016
taca
0
140
Contao Open Source CMS -- 最新動向: 4.2とその後
taca
0
400
Contao Open Source CMS -- Contao 4.2に向けて
taca
0
91
DNSの名前解決エラー(現在進行中)
taca
0
370
FREQUPS FW-10HとNetBSD
taca
0
150
Other Decks in Technology
See All in Technology
バクラクの組織とアーキテクチャ(要約)2025/01版
shkomine
13
2.9k
トレードオフスライダーにおける品質について考えてみた
suzuki_tada
3
180
ObservabilityCON on the Road Tokyoの見どころ
hamadakoji
0
210
インシデントキーメトリクスによるインシデント対応の改善 / Improving Incident Response using Incident Key Metrics
nari_ex
0
4.1k
CNAPPから考えるAWSガバナンスの実践と最適化
nrinetcom
PRO
1
330
Makuake*UPSIDER_LightningTalk
upsider_tech
0
200
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
10
120k
サーバーレスで楽しよう!お気軽に始められる3つのポイント / Have fun with Serverless!
_kensh
2
230
20250129 Findy_テスト高活用化
dshirae
0
220
教師なし学習の基礎
kanojikajino
4
360
例外処理を理解して、設計段階からエラーを「見つけやすく」「起こりにくく」する
kajitack
12
3.7k
Re:Define 可用性を支える モニタリング、パフォーマンス最適化、そしてセキュリティ
pyama86
9
5.6k
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
32
6.4k
Being A Developer After 40
akosma
89
590k
Code Reviewing Like a Champion
maltzj
521
39k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
19k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
990
Adopting Sorbet at Scale
ufuk
74
9.2k
How to Think Like a Performance Engineer
csswizardry
22
1.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.2k
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 – ݴޠϑΝΠϧͷվળ – ຊޠͷυΩϡϝϯτඋ – ػೳ֦ுͷݴޠϑΝΠϧ • ࠶ར༻ՄೳͳαϯϓϧɾαΠτ