Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Contao Open Source CMS -- 最新動向: 4.2とその後

Contao Open Source CMS -- 最新動向: 4.2とその後

オープンソースカンファレンス 2016 京都で行ったセミナーの発表資料です。

Takahiro Kambe

July 30, 2016
Tweet

More Decks by Takahiro Kambe

Other Decks in Technology

Transcript

  1. ൃදऀʹ͍ͭͯ ଓ͖ • Φʔϓϯιʔεͱࢲ – NetBSD։ൃऀ • pkgsrc(ύοέʔδγεςϜ) 2000೥8݄͔Β –

    Ruby – PHP – ͦͷଞඞཁʹԠͯ͡ – ͦͷଞ೔ຊޠ຋༁ • ຊۀͱWebαΠτߏங͸ແؔ܎
  2. $POUBPͱ͸Կ͔ • ΦʔϓϯιʔεͷCMS – 2006೥3݄12೔: TYPOlight 2.0.RC͔Βެ։ • 10ि೥Λܴ͑·ͨ͠! –

    LGPL3 – ঎༻ϥΠηϯε͋Γ 1. ϖʔδͷιʔεͰContaoΛ࢖༻͍ͯ͠ΔදࣔΛ࡟আ – metaλάͷgenerator 2. ιʔείʔυ͔Βஶ࡞ݖදࣔΛ࡟আ – ެࣜαΠτ: https://contao.org/ • ݴޠ͸υΠπޠɺӳޠɺεϖΠϯޠ – ։ൃݩ: υΠπ
  3. ਺ࣈͰݟΔ$POUBP • Contao Konferenz 2016ͷجௐߨԋͷࢿྉ͔Β – https://leofeyer.de/files/slides/2016/konferenz/ • υΠπޠ: Google

    Translation֦ுͰӳ༁Մೳ • μ΢ϯϩʔυ – 2016೥5݄10೔Ͱ1,144,765 • 2015೥1݄຤Ͱ1,000,000Λ௒͑ – ैͬͯɺ15͔݄Ͱ145,000 – 1೥ʹ116,000ɺ݄ʹ9,600ͱ׵ࢉ • download.contao.org͔Βͷμ΢ϯϩʔυ – Contao CheckɺެࣜαΠτͷμ΢ϯϩʔυ • github.com͔Βͷμ΢ϯϩʔυ͸আ֎
  4. ϚʔέοτγΣΞ • CMSCrawlerͷ݁Ռ: – http://www.cmscrawler.com/ • 843γεςϜத11Ґ • υΠπ: 4Ґ(2014೥:

    8Ґ) 5.10% – http://www.cmscrawler.com/tld/de • ΦʔετϦΞ: 4Ґ(2014೥: 6Ґ) 3.34% – http://www.cmscrawler.com/tld/at • εΠε: 4Ґ(2014೥: 8Ґ) 2.54% – http://www.cmscrawler.com/tld/ch • ϦώςϯγϡλΠϯ: 5Ґ – http://www.cmscrawler.com/tld/li
  5. ໊લͷมߋ • Ҏલͷ໊લ: TYPOlight (2.8·Ͱ) – light͔Βܰྔ൛ͱ͔খن໛αΠτઐ༻ͱޡղ • ϦϦʔε2.9͔Βվ໊ •

    ϕτφϜޠͷconͱtạoͷ଄ޠ – tạo • ܗΛͳ͢ɺ૑଄͢Δͱ͍ͬͨҙຯͷϕτφϜޠ – con tạo • ૑࡞ऀɺӡ໋͚ͮΔͱ͍ͬͨҙຯ • ίϯςϯπʹ΋௨͡Δ – ஍໊Ͱ͸ͳ͍
  6. $POUBPͷಛ௃ • ௚ײతͳόοΫΤϯυૢ࡞ • ֊૚ߏ੒ʹΑΔαΠτߏ଄ͷ؅ཧ • ॊೈͳΞΫηεݖݶઃఆ • ॊೈͳϑΥʔϜδΣωϨʔλʔ •

    ಺ଂͷCSSϑϨʔϜϫʔΫ • ಺ଂͷϑΝΠϧ؅ཧ • Ϩεϙϯγϒը૾ • ίϯςϯτཁૉ • ΞΫηγϏϦςΟͷߟྀ • ΧελϚΠζ΍֦ுͷ͠΍͢͞
  7. ಈ࡞؀ڥ • Webαʔόʔ – Apache(, IIS) • εΫϦϓςΟϯάݴޠ – PHP

    5.4.0Ҏ߱ • ඞཁͳ֦ு: mysqli(·ͨ͸mysql), dom, gd, mbstring(·ͨ͸iconv), mcrypt, soap, curl, zlib • σʔλϕʔε؅ཧγεςϜ – MySQL 5.0.3Ҏ߱ • ଞͷσʔλϕʔεͷαϙʔτ͸Contao 3.0ͰҰ୴ഇࢭ
  8. ֤ࠃޠରԠ • ݴޠϑΝΠϧ͸ຊମʹಉࠝ – Contao 3.5.15Ͱ25ͷݴޠ – Contao 4.2.2Ͱ17ͷݴޠ •

    ͜Ε͔Β૿͑Δ໛༷ – TransifexͰ95%Ҏ্ͷ຋༁཰Ͱ࠾༻ • 95%ະຬʹͳΔͱ࡟আ
  9. ϦϦʔεͷछྨ • ௨ৗͷϦϦʔε: όʔδϣϯ X.Y.Z – ϝδϟʔϦϦʔε: X • ͋ΒΏΔมߋͷՄೳੑ

    • 2012೥10݄30೔ʹ3.0.0ɺ2015೥6݄9೔ʹ4.0.0 • ݻఆͨ͠ϦϦʔεִؒ͸ͳ͠(2೥ʹ1౓ͱ͍͏ر๬) – ϚΠφʔϦϦʔε: Y • APIͷมߋ͸(಺෦తͳ΋ͷΛআ͖)ͳ͠ • σʔλߏ଄ɺςϯϓϨʔτʹมߋͷՄೳੑ • ൒೥ʹ1ճ: 6݄ͱ12݄(౰ॳ͸5݄ͱ11݄) – όάमਖ਼ϦϦʔε: Z • جຊతʹόάमਖ਼͚ͩ → ্Ґޓ׵ͳमਖ਼͚ͩ • ਵ࣌(֓Ͷ݄ʹ1౓ఔ౓)
  10. ௕ظαϙʔτϦϦʔε -54 • 3೥ؒͷอकظؒͷϚΠφʔϦϦʔε – ݪଇͱͯ͠όάमਖ਼͚ͩ • 1೥ؒͷҠߦظؒ – ηΩϡϦςΟमਖ਼͚ͩ

    • ߹ܭͰ4೥ؒ • LTSͷϦϦʔεִؒ͸2೥ʹ1౓ – SymfonyͷϦϦʔεִؒͱͷ਌࿨ੑ • Contao 4Ҏ߱͸SymfonyΛ࢖༻
  11. ݱࡏͷϦϦʔε • $POUBP -54 – ೥ ݄೔  • ݱࡏͷ௕ظαϙʔτϦϦʔε೥݄·Ͱ

    • ࣍ͷ௕ظαϙʔτϦϦʔε͸$POUBP • $POUBP ҆ఆ൛ – ೥ ݄೔  • ࠷ۙͷηΩϡϦςΟमਖ਼$7& – NFEJBFMFNFOUKTͷ944 • KRVFSZͷϓϥάΠϯ • ެ։͢ΔαΠτͷσβΠϯʹ࢖༻͍ͯ͠Δ৔߹͚ͩӨڹ
  12. όοΫΤϯυͱϑϩϯτΤϯυ • WebαΠτͷ؅ཧଆͱެ։ଆ – ؅ཧଆ: όοΫΤϯυ – ެ։ଆ: ϑϩϯτΤϯυ –

    όοΫΤϯυͰ؅ཧͯ͠ɺ ϑϩϯτΤϯυΛϓϨϏϡʔ → ެ։ • URL – ϑϩϯΤϯυ: http://www.example.jp/ – όοΫΤϯυ: http://www.example.jp/contao/ • Πϯετʔϥʔ – 4.0ΑΓલ: http://www.example.jp/contao/install.php – 4.0Ҏ߱: http://www.example.jp/install.php
  13. όοΫΤϯυͷ6*ͷಛ௃ • ओʹ3ͭͷදࣔܗࣜ – Ϧετදࣔ – ϖΞϨϯτදࣔ – πϦʔදࣔ –

    ͦΕͧΕͰڧྗͳฒ΂ସ͑ɺϑΟϧλʔɺݕࡧ • όοΫΤϯυશମͷҰ؏ੑ – ૢ࡞͢ΔͨΊͷΞΠίϯͷ࣋ͭҙຯ
  14. ϖʔδͷ֊૚ͱઃఆ • ֊૚ͷى఺ – 1ͭҎ্ͷʮ΢ΣϒαΠτͷϧʔτʯ – υϝΠϯͱݴޠʹԠͨ͡΢ΣϒαΠτͷϧʔτ • ϚϧνυϝΠϯͷαϙʔτ •

    ଟݴޠαΠτͷαϙʔτ – શମతͳઃఆͰURLύεʹݴޠίʔυΛ෇ՃՄೳ » http://www.example.jp/ja http://www.example.jp/en
  15. ϖʔδͷઃఆ • ϖʔδͷઃఆ – ϖʔδϨΠΞ΢τ – ΞΫηεݖ • όοΫΤϯυͱϑϩϯτΤϯυͦΕͧΕ –

    Ωϟογϡ • ϖʔδ୯ҐͷΩϟογϡ – ެ։ઃఆ – αΠτϚοϓ΍φϏήʔγϣϯ΁ͷදࣔ
  16. ϖʔδϨΠΞ΢τ • ϖʔδʹؚΊΔ಺༰ͷఆٛ – ΧϥϜߏ੒ – ֤ΧϥϜͷ഑ஔ಺༰ • ΞʔςΟΫϧ΍ϑϩϯτΤϯυϞδϡʔϧ –

    ελΠϧγʔτͷϑϨʔϜϫʔΫ – ؚΊΔελΠϧγʔτ • σʔλϕʔε಺Ͱอ؅ • ֎෦ͷϑΝΠϧ: CSS, SCSS, LESS – jQuery΍MooToolsͷಡΈࠐΈ
  17. ϑϩϯτΤϯυϞδϡʔϧ • ଞͷCMSͰͷϒϩοΫʹ૬౰ – φϏήʔγϣϯ • ϝχϡʔɺύϯͣ͘ɺϒοΫɺαΠτϚοϓ – ϑϩϯτΤϯυͷϢʔβʔ •

    ొ࿥ɺϩάΠϯɺݸਓσʔλɺΞΧ΢ϯτഇࢭ – ίϯςϯπͷҰཡ΍දࣔ • χϡʔεɺΠϕϯτɺFAQɺχϡʔεϨλʔ – ΞϓϦέʔγϣϯ • ϑΥʔϜɺϖʔδ಺ݕࡧɺίϝϯτɺϦεςΟϯά – ͦͷଞ • FlashಈըɺϥϯμϜͳը૾ɺHTMLɺRSSදࣔ
  18. ελΠϧ • ελΠϧγʔτͷϑϨʔϜϫʔΫ – ΧϥϜߏ੒΍Ϩεϙϯγϒදࣔͷ࿮૊Έ • ελΠϧγʔτ – ಺෦ •

    σʔλϕʔεͰอ࣋ • GUIͰฤू – ֎෦ • ϑΝΠϧ؅ཧʹϑΝΠϧΛ഑ஔ • ϑΝΠϧ؅ཧͰฤू • LESS΍SCSSͷϑΝΠϧ΋௚઀ࢦఆՄೳ
  19. ςϯϓϨʔτ • ͢΂ͯͷग़ྗ͸ςϯϓϨʔτΛܦ༝ – طଘͷςϯϓϨʔτ • Contaoͷ഑෍ʹؚ·Ε͍ͯΔݪ൘ – ΧελϚΠζ༻ͷςϯϓϨʔτ •

    ݪ൛Λίϐʔͯ͠ΧελϚΠζ • ΧελϚΠζ൛͕͋Ε͹࢖༻ – ΧελϚΠζͨ͠ςϯϓϨʔτ • ݸʑͷϑϩϯτΤϯυϞδϡʔϧͰࢦఆ • ݸʑͷίϯςϯτཁૉͰࢦఆ
  20. ίϯςϯπͷछྨ • ΞʔςΟΫϧ – ಛఆͷϖʔδʹஔ͘ίϯςϯπ • ίϯςϯτཁૉͰߏ੒ • χϡʔεɺΠϕϯτɺFAQɺχϡʔεϨλʔ –

    ಛఆͷ୯Ґ(ΞʔΧΠϒ)Ͱอ࣋͢Δίϯςϯπ • ϑϩϯτΤϯυϞδϡʔϧͰϖʔδ্ʹදࣔ • χϡʔεͱΠϕϯτ͸ίϯςϯτཁૉͰߏ੒ • χϡʔεϨλʔ – ϝʔϧϚΨδϯతͳిࢠϝʔϧͰͷ഑৴ – ഑৴ͨ͠هࣄͷWeb্Ͱͷެ։
  21. ίϯςϯτཁૉ • ΞʔςΟΫϧɺχϡʔεɺΠϕϯτͷ಺༰ – ίϯςϯπΛߏ੒͢Δॱংʹ෼͚ͯߏ੒ – ίϯςϯτཁૉʹద੾ͳςϯϓϨʔτͷద༻ • ΞΫηγϏϦςΟ •

    ಺෦ݕࡧΤϯδϯ΁ͷࢦࣔ – ίϯςϯπͷ࠶ར༻ɾޮ཰తͳར༻ • ಉ͡ίϯςϯτཁૉͷڞ༗ • ଞͷίϯςϯτཁૉͷऔΓࠐΈ – ίϯςϯτཁૉ୯Ґͷެ։
  22. ϝσΟΞ΍දࣔͷ੍ޚ • ը૾΍ಈը – ը૾ɺը૾ΪϟϥϦʔɺө૾΍Ի੠ɺYouTubeಈը • ίϯςϯτཁૉͷද੍ࣔޚ – ΞίʔσΟΦϯɺίϯςϯτεϥΠμʔ •

    ଞͷίϯςϯπͷऔΓࠐΈ – ΞʔςΟΫϧɺίϯςϯτཁૉɺϞδϡʔϧɺ ΞʔςΟΫϧͷςΟʔβʔ – ϑΥʔϜɺίϝϯτ
  23. ૠೖλά • {{ ͱ }} ͰғΜͩϚΫϩͷΑ͏ͳ΋ͷ – ϦϯΫཁૉ • ϖʔδ΍χϡʔε߲໨ͷϦϯΫʹؔ͢Δ΋ͷ

    – Ϣʔβʔͷଐੑ • ϩάΠϯ͍ͯ͠ΔϑϩϯτΤϯυϢʔβʔͷ৘ใ – ؀ڥม਺ • ΫϥΠΞϯτͷIPΞυϨε౳ͷ؀ڥม਺ – ཁૉͷऔΓࠐΈ • ଞͷΞʔςΟΫϧ΍ίϯςϯτཁૉΛల։ – ͦͷଞ • ݱࡏͷ೔࣌΍ݴޠʹج͍ͮͨ৚݅ॲཧ
  24. Πϯετʔϧͷ४උ • ApacheɺPHPͷઃఆ • σʔλϕʔεͷ४උ – σʔλϕʔεͷ࡞੒ – σʔλϕʔεͷϢʔβʔͷ࡞੒ •

    ιϑτ΢ΣΞͷμ΢ϯϩʔυͱల։ – ख࡞ۀͰμ΢ϯϩʔυɺల։ɺΞοϓϩʔυ – ύοέʔδγεςϜͷར༻(pkgsrc) – ContaoνΣοΫͷར༻ • https://github.com/contao/check
  25. $POUBPνΣοΫ • Πϯετʔϧલͷࢧԉπʔϧ – https://github.com/contao/check • PHPͷgettext֦ு(ଟݴޠදࣔ)͕ඞཁ – ContaoͷΠϯετʔϧʹؔ͢Δݕࠪ •

    ContaoͷόʔδϣϯʹԠͨ͡ΠϯετʔϧͷՄ൱ – Πϯετʔϧޙͷػೳͷར༻Մ൱ • ػೳ֦ுϦϙδτϦ • ϥΠϒΞοϓσʔτ • ηʔϑϞʔυରॲͷඞཁੑ – Contaoͷ഑෍ϑΝΠϧͷऔಘͱల։ • μ΢ϯϩʔυɺల։ɺΞοϓϩʔυ·Ͱʹ૬౰͢Δ࡞ۀΛαʔ όʔ্Ͱ࣮ߦ • ల։ͨ͠ϑΝΠϧͷ಺༰ͷݕূ • Contao 4.0Ҏ߱ͷΠϯετʔϧʹ͸ඇରԠ
  26. Πϯετʔϧ • Πϯετʔϧπʔϧ – Contao 3.5: http://www.example.jp/contao/install.php – Contao 4.2

    : http://www.example.jp/install.php – ਺ஈ֊Ͱઃఆ • σʔλϕʔεͷ઀ଓ֬ೝ΍ςʔϒϧ࡞੒ • ௨ৗ͸Πϯετʔϧ͚࣌ͩ – Ξοϓσʔτ΍։ൃͰ࢖͏৔߹ • ηΩϡϦςΟ – ࠷ॳʹύεϫʔυΛઃఆ – ෆ҆ͳ৔߹͸install.phpΛ࡟আ΍໊લมߋΛ࣮ࢪ
  27. ϥΠϒΞοϓσʔτ • ΠϯετʔϧޙͷࢧԉαʔϏε • https://update.contao.org/ – iNet RobotsࣾʹΑΔ༗ঈαʔϏε – ೥ֹ10Ϣʔϩ

    • υΠπͷച্੫19%ࠐΈɺͦΕΛআ͍ͨ೔ຊԁͰ1200ԁऑ • Πϯετʔϧͨ͠1ͭͷContaoʹରͯ͠1ϥΠηϯε͕ඞཁ • Ϛ΢ε਺ճͷΫϦοΫͰߋ৽ – Πϯετʔϧઌͷόʔδϣϯͷબ୒ • ৽͍͠όάमਖ਼ϦϦʔε΍ϚΠφʔϦϦʔεɺҎલͷϦϦʔε – σʔλϕʔεͷόοΫΞοϓͷ࡞੒ • όοΫΞοϓ͔ΒҎલͷόʔδϣϯ΁ͷ෮ݩ • Contao 4ʹ͸ඇରԠ
  28. $POUBP • ௕ॴ – ଟ਺ͷػೳ֦ு • Isotope΋Contao 3.5ϕʔε – 2019೥5݄·Ͱͷ௕ظαϙʔτ

    • ୹ॴ – ৽͍͠ػೳͷ௥Ճ͸ͳ͍ • ઃܭ – ಠࣗͷϑϨʔϜϫʔΫ
  29. $POUBP • ௕ॴ – ৽͍͠ػೳ – Symfony – ࠓ෩ͷόοΫΤϯυςʔϚ •

    ୹ॴ – গͳ͍ޓ׵ੑ͕͋Δػೳ֦ு – ௕ظαϙʔτͷόʔδϣϯͳ͠ • ઃܭ – Symfonyϕʔε – ComposerͷbundleͰߏ੒
  30. $POUBP ͷ՝୊ • ػೳ֦ு؅ཧ – ػೳ֦ுϦϙδτϦͷར༻ – ػೳ֦ுͷ؅ཧ(Πϯετʔϧɺߋ৽ɺ࡟আ) • Contao

    4Ҏ߱ͷߏ੒ – Symfonyϕʔε – Composer • bundleͱ͍͏Ұछͷύοέʔδͷू߹ͱͯ͠ߏ੒ – ֦ுػೳ΋bundleͱͯ͠؅ཧ
  31. $PNQPTFSϕʔεͷػೳ֦ு • طʹଘࡏ • Contao 3.5ͷΠϯετʔϧπʔϧͰઃఆՄೳ – ैདྷͷػೳ֦ு؅ཧͱΧλϩάΛఀࢭ – ComposerͰػೳ֦ுΛΠϯετʔϧՄೳ

    • ैདྷͷػೳ֦ுϦϙδτϦʹొ࿥͞Ε͍ͯΔύοέʔ δ΋ “contao-legacy/”Λઌ಄ʹ໊͚ͭͨલͰఏڙ – https://legacy-packages-via.contao-community-alliance.org/ – ैདྷΑΓ࢖͍΍͍͢ͱ͸ݴ͑ͳ͍?
  32. $POUBP .BOBHFS • 2ͭͷϞʔυ – SymfonyͷΞϓϦʔέʔγϣϯ • ίϚϯυߦͷπʔϧ • ContaoΛؚΊͨbundleͷ؅ཧ

    – ContaoνΣοΫͷΠϯετʔϧػೳΛΧόʔ? • SymfonyΛ׆༻͍ͨ͠։ൃऀ޲͚ – ContaoͷΞϓϦέʔγϣϯ • ContaoͷόοΫΤϯυͷGUIͷҰ෦ • Contaoͷػೳ֦ுͷ؅ཧ • ҰൠͷϢʔβʔ޲͚
  33. ϩʔυϚοϓ • 2016೥11݄ – όʔδϣϯ1 – Contao 4.3Ͱఏڙ • 2017೥5݄ΑΓલʹϦϦʔε

    – ݁Ռͱͯ͠Contao 4.4(LTS)Ͱ΋ఏڙ – ػೳ֦ுͷ։ൃऀ͕༰қʹఏڙ͢Δखஈͷ༻ҙ – ػೳ֦ுͷอकͷػೳ • ίʔυ – https://github.com/contao/contao-manager
  34. ެࣜαΠτ • ެࣜαΠτ: https://contao.org/ • ։ൃαΠτ: https://github.com/contao/ • ϑΥʔϥϜ: https://community.contao.org/

    • Contao Association: https://association.contao.org/ • ࣄྫݚڀ: https://contao.org/case-studies.html • ίϛϡχςΟʹΑΔWiki: http://contaowiki.org/ • ιʔγϟϧωοτϫʔΫ – Facebook: http://www.facebook.com/contao – Twitter: http://twitter.com/contaocms
  35. $POUBPͷ·ͱΊ • ೔ʑͷίϯςϯπͷ؅ཧ – Ұ؏ੑͷ͋ΔόοΫΤϯυ͸֮͑΍ͯ͘͢؆୯ – ίϯςϯτཁૉʹΑΔߏ੒ • αΠτͷσβΠϯ –

    ෦඼ΛੵΈ্͍͛ͯ͘Πϝʔδ – ςϯϓϨʔτ΋ΧελϚΠζՄೳͳ͕Β • ֦ுੑͱอकੑ – ຊମͷϑΝΠϧΛ৮ΒͣʹΧελϚΠζ΍֦ு Մೳͳ࡞Γ