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

大学におけるWordPressサイトのインハウス開発

Toru
July 09, 2016

 大学におけるWordPressサイトのインハウス開発

Slide for my presentation at WordCamp Kansai, held at Osaka, Japan on 9 July 2016

WordCamp Kansai 2016 (2016/07/09-10) 登壇スライド

----
概要

大学のウェブサイトをインハウスで開発、運営しており、一部にWordPressを採用しています。これまでの開発経験の中から、主に機能追加の要望に対して「できなくはない」ケースや、「シングルサイトかマルチサイトかの選択」においての意思決定についてお話します。日々の更新業務を遂行しつつ、インハウス開発を行うヒントになればと思います。

Toru

July 09, 2016
Tweet

More Decks by Toru

Other Decks in Technology

Transcript

  1. େֶʹ͓͚Δ
    8PSE1SFTTαΠτͷ
    Πϯϋ΢ε։ൃ
    5PSV.JLJ!8PSE$BNQ,BOTBJ

    View Slide

  2. 8IPBN*

    View Slide

  3. 5PSV.JLJ

    ࡾ໦ప
    5PSVXBWJBFJ
    w #MPHIUUQTXBWJBFJDPN
    w 5XJUUFS!XBWJBFJ
    w (JU)VCIUUQTHJUIVCDPNXBWJBFJ
    w 8PSE1SFTTPSHIUUQTQSPpMFTXPSEQSFTTPSHUPSV

    View Slide

  4. 8PSE1SFTTͱͷؔΘΓ
    w $PNNVOJUZ
    w 8PSE$BNQͷελοϑ΍௨༁ͳͲ 5PLZP࣮ߦҕһ௕

    w 8PSE1SFTT.FFUVQ5PLZPڞಉओ࠵ऀ
    w 1PMZHMPU
    w ೔ຊޠύοέʔδɺϓϥάΠϯɺ$PEFYɺͳͲ
    w $PSF
    w ΄Μͷগ͚ͩ͠ίΞʹίϛοτ
    w 1VCMJDBUJPO
    w 8PSE1SFTTٯҾ͖σβΠϯࣄయ1-64<YରԠ>

    View Slide

  5. ೥݄ʙ
    ςϯϓϧେֶδϟύϯΩϟϯύε

    Ξγελϯτɾ΢ΣϒϚελʔ

    View Slide

  6. ۀ຿಺༰
    w dׂʹߋ৽ۀ຿
    w ߋ৽ɾϖʔδ௥ՃɾϑΥʔϜ࡞੒ɾ&ϝʔϧϒ
    ϥετͷ࡞੒
    w ͦͷଞ
    w 8PSE1SFTTαΠτͷ։ൃɾϝϯςφϯεɺϦ
    χϡʔΞϧɺϒϩά΍ιʔγϟϧϝσΟΞͷ
    ߋ৽ɺଔۀࣜͷϥΠϒதܧɺ૬ஊʹ৐Δɺ౳ʑ

    View Slide

  7. ςϯϓϧେֶ
    δϟύϯΩϟϯύεͷ
    ΢ΣϒαΠτ

    View Slide

  8. ։ൃɾӡӦମ੍
    w ޿ใɾϚʔέςΟϯάαϙʔτ෦
    w ΢ΣϒϚελʔ͸໊
    w 56+ʹ͓͚Δશͯͷ΢ΣϒαΠτΛ։ൃɾӡӦ
    w ΞϝϦΧຊߍͷ΢ΣϒαΠτͱͷ։ൃͱӡӦ
    ʹؔ͢Δؔ࿈ੑ͸ແ͠ʢୠ͠Ұ෦ΨΠυϥΠ
    ϯʹ͸४ͣΔʣ

    View Slide

  9. αΠτ
    w ӳޠͱ೔ຊޠʢֶ಺ͷୈҰݴޠ͸ӳޠʣ
    w ϝΠϯͷ$.4͸ແ͠ʢʂʣ
    w αϒͷ$.4ͱͯ͠8PSE1SFTTΛͭͷηΫ
    γϣϯͰ࠾༻ʢͭ͸ߋ৽ఀࢭதʣ
    w 8PSE1SFTTDPN΋޿ใ෦ϒϩάͱͯ͠׆༻

    View Slide

  10. "HFOEB
    w ਖ਼ղ͕ͳ͍೰Έͷछ
    w ͦͷ̍ɿʮͰ͖ͳ͘͸ͳ͍ʯ
    w ͦͷ̎ɿΠϯετʔϧ਺ͱαΠτ਺
    w ͳͥ೰Ήͷ͔ʁ
    w ͓·͚

    View Slide

  11. ਖ਼ղ͕ͳ͍೰Έͷछ
    ͦͷ̍ɿʮͰ͖ͳ͘͸ͳ͍ʯ

    View Slide

  12. 8PSE1SFTTͰ
    αΠτΛ࡞ΔࡍʹΑ͋͘Δ͜ͱ

    View Slide

  13. ʮ˓˓Ͱ͖·͔͢ʁʯ

    View Slide

  14. ʮͰ͖ͳ͘͸ͳ͍͚ΕͲʜʯ

    View Slide

  15. օ͞Μ͸Ͳ͏͞Ε͍ͯ·͔͢ʁ

    View Slide

  16. ࣄྫɿ
    ֎෦αΠτ΁ͷϦϯΫͷΈͷ
    ౤ߘ

    View Slide

  17. ެ։༧ఆ೔ͷ
    िؒఔલʹґཔ͞Εͨػೳ

    View Slide

  18. View Slide

  19. ૝ఆͰ͖Δ࣮૷ํ๏ͱίετ
    w ΧελϜ౤ߘϑΥʔϚοτͷʮϦϯΫʯΛ׆༻͢Δ
    w ౤ߘը໘ͱϑϩϯτΤϯυɺ྆ํΧελϚΠζ͕ඞཁ
    w ࣮૷ܦݧͷ༗ແ
    w ͋Δ
    w ޻਺
    w ίʔσΟϯάʹʙ࣌ؒ

    View Slide

  20. ૝ఆͰ͖Δ࣮૷ํ๏ͱίετ
    w ίʔσΟϯάҎ֎
    w ֎෦ϦϯΫ༻ͷΞΠίϯͷमਖ਼͕ඞཁ
    w ΧελϜ౤ߘϑΥʔϚοτʹؔ͢Δ࠷৽ಈ޲
    ʹؔ͢Δௐࠪ
    w τʔλϧ޻਺
    w ༨༟Λ࣋ͬͯʙ࣌ؒ

    View Slide

  21. ͦͷଞݕ౼ࣄ߲
    w ඞཁੑ
    w ެ։௚ޙʹ࢖͏Մೳੑ͕͋Δɺ͔͠͠සൟʹ͸࢖
    Θͳ͍
    w ӡ༻ͰΧόʔՄೳ͔ʁ
    w ϦϯΫ঺հͷ౤ߘهࣄͱͯ͠޻෉͢Δ
    w ͦͷࡍɺࣗ෼ͨͪͰߋ৽͢ΔίϯςϯπͳͷͰ
    ֶशίετ͸θϩ

    View Slide

  22. ݁࿦
    w ٕज़తʹ͸࣮૷͸Մೳ
    w ݟੵ΋ͬͨ޻਺Ͱ͸εέδϡʔϧతʹ͸ݫ͍͠
    w ެ։Λ஗Βͤͯ·Ͱ࣮૷͍ͨ͠ػೳͰ͸ͳ͍
    w هࣄͷॻ͖ํΛ޻෉ͯ͠౤ߘͰ͖Δ
    w ެ։࣌ͷ࣮૷͸ݟૹΓɺެ։ޙͷվળλεΫʹ
    w ໿ϲ݄ޙʹ࣮૷ɺͦΕ·Ͱʹ֘౰ͨ͠ͷ͸ճͷΈ

    View Slide

  23. View Slide

  24. ʮͰ͖Δʯ
    ʮͰ͖ͳ͘͸ͳ͍ʯ
    ʮͰ͖ͳ͍ʯ
    ΄ͱΜͲ͜Εʂ

    View Slide

  25. ʮͰ͖ͳ͘͸ͳ͍ʯʹ
    શͯԠ͍͑ͯΔͱ
    ޻਺͕Ұؾʹ૿͑Δʜةݥʂ

    View Slide

  26. ೔ʑͷϝΠϯۀ຿͕
    ߋ৽΍ӡ༻ͷ৔߹ɺ਺࣌ؒͷ
    ௥Ճ޻਺Ͱ΋͕࣌ؒ΋͍ͬͨͳ͍

    View Slide

  27. ʮٕज़తʹՄೳ͔Ͳ͏͔ʯ
    ͚ͩͰͳ͘ɺ
    ʮ޻਺ʯʮඞਢ౓ʯʮॏཁ౓ʯ
    Λඞͣఱṝʹֻ͚ͯݕ౼͢Δ

    View Slide

  28. ʮඞਢ౓ʯͱʮॏཁ౓ʯ͕ɺ
    ߴ͘ͳ͚Ε͹ɺ
    ެ։ޙͷվળλεΫʹ͢Δ

    View Slide

  29. ެ։ޙͷӡ༻ঢ়گΛ֬ೝ
    ʮຊ౰ʹඞཁͳͷ͔ʁʯ
    ݟۃΊΔ

    View Slide

  30. ػೳ֦ுͷ։ൃ͸ɺ
    খ͞Ίͷ୯ҐͰɺ
    ܧଓతʹɺগͣͭ͠

    View Slide

  31. ࣌ʹ͸
    ʮͰ͖·ͤΜʂʯ

    View Slide

  32. ਖ਼ղ͕ͳ͍೰Έͷछ
    ͦͷ̎ɿʮΠϯετʔϧ਺ͱ
    αΠτ਺ʯ

    View Slide

  33. γϯάϧαΠτºO
    PS
    ϚϧναΠτ

    View Slide

  34. ଟݴޠԽͷ৔߹
    w Πϯετʔϧʹݴޠ
    w ϓϥάΠϯ
    w γϯάϧαΠτͰଟݴޠ
    w ϚϧναΠτͰଟݴޠ
    w αΠτશମͷ࢓༷ʹؔΘΔ͜ͱͳͷͰɺޙͰ
    มߋ͢Δͷ͕೉͍͠

    View Slide

  35. ࣄྫɿ
    ଟݴޠʢӳޠɾ೔ຊޠʣͷ
    χϡʔεɾηΫγϣϯ

    View Slide

  36. ଟݴޠϓϥάΠϯ͸ඇৗʹෳࡶ

    View Slide

  37. ಋೖ͸΋ͪΖΜͷ͜ͱɺ
    ެ։ޙͷϝϯςφϯείετ΍
    ΧελϚΠζίετ΋݁ߏ͔͔Δ

    View Slide

  38. ޻਺͕૿͑Δ
    ˍ
    ༧ଌͮ͠Β͍

    View Slide

  39. ຊԻ
    Ͱ͖Ε͹ಋೖͨ͘͠ͳ͍ʢসʣ

    View Slide

  40. ӡ༻ঢ়گͷ֬ೝ
    w ౤ߘϑϩʔ
    w ޿ใ୲౰ऀˠ޿ใ෦௕PSBOE্௕ˠ޿ใ୲౰ऀˠ΢Σϒ
    ୲౰ऀ
    w ࠷ޙͷ΢Σϒ΁ͷ౤ߘɺߋ৽͸΢Σϒ୲౰ऀ͕ߦ͏
    w ຋༁΋ओʹ޿ใ୲౰ऀ͕ߦ͏
    w πʔϧ
    w .48PSEͷτϥοΩϯάΛ׆༻
    w ยํͷΈͷݴޠͰͷ౤ߘ΋͋Δ

    View Slide

  41. ͜ͷ౤ߘϑϩʔΛ
    8PSE1SFTT্ʹஔ͖׵͑Δ͜ͱ͸
    ೉͍͠ʢίεύ͕ѱ͍ʣ

    View Slide

  42. ϩʔΧϧʹߏஙͯ֬͠ೝ
    w ݸผΠϯετʔϧʢγϯάϧαΠτʣº̎
    w ϓϥάΠϯʢγϯάϧαΠτʣ
    w #PHP
    w 1PMZMBOH
    w 81.-
    w ϓϥάΠϯʢϚϧναΠτʣ
    w .VMUJMJOHVBM1SFTT

    View Slide

  43. ݁࿦ɿݸผΠϯετʔϧº̎
    w େ͖ͳίετΛֻ͚ͯ·Ͱɺ౤ߘϑϩʔશͯΛ8PSE1SFTT಺
    ʹҠߦ͢ΔϝϦοτ͕ͳ͍
    w Ͳͷબ୒͠Ͱ͋ͬͯ΋ɺ΢Σϒ୲౰ऀͷ࡞ۀ෦෼͸શମͷ
    εϐʔυΞοϓʹܨ͕Δ
    w ίʔυॻ͍ͯղܾ͠ͳ͚Ε͹ͳΒͳ͍໰୊͸ൃੜ͢Δ΋ͷͱ
    ૝ఆ͓ͯ͘͠
    w ୈࡾऀ࡞ϓϥάΠϯ͸গͳ͍ํ͕Α͍
    w γϯάϧΛవΊΔํ͕ɺϚϧνΛ෼͚ΔΑΓ΋΍Γ΍͍͢

    View Slide

  44. ݁࿦ɿݸผΠϯετʔϧº̎
    w σϝϦοτ
    w ಉ͡ը૾Λಉ͡αʔόʔʹճΞοϓ
    w ʢϓϥάΠϯΛ࢖༻ͯ͠΋ಉ͡໰୊͕͋Δʣ
    w ղܾࡦҊ
    w ը૾ઐ༻$%/ʢϨεϙϯγϒରԠʣ

    View Slide

  45. ͳͥ೰Ήͷ͔ʁ

    View Slide

  46. 8PSE1SFTTͷॊೈੑ͸
    ॾਕͷ݋

    View Slide

  47. ͋Ε΋Ͱ͖Δɺ͜Ε΋Ͱ͖Δ
    ˣ
    έʔεόΠέʔεˍཁௐࠪ

    View Slide

  48. ςʔϚػೳ΍ɺϑοΫΛ༻͍ͨઃ
    ఆͷมߋɾػೳ௥Ճ͕૿͑Δ
    ˣ
    ॻ͘ίʔυͷྔ͕૿͑Δ

    View Slide

  49. ͞Βʹʂ

    View Slide

  50. ίΞͷ։ൃ͕ܧଓతˍඇৗʹ׆ൃ
    ˣ
    ֶͼ͕௥͍͔ͭͳ͍

    View Slide

  51. ௐ΂ΔɾίʔσΟϯάɾֶͿ
    ˣ
    ޻਺͕૿͑Δ͹͔Γ

    View Slide

  52. ܧଓతͳϝϯςφϯείετ͕
    ֻ͔Δ͜ͱ΋๨Εͣʹʂ

    View Slide

  53. Ͱ͖Δ͜ͱ
    w ֶͼଓ͚ΔʢεΩϧͷϨϕϧΞοϓʣ
    w εέδϡʔϦϯά
    w σʔλऩूɾ෼ੳɾ஝ੵ
    w ޻਺ɺΞΫηε਺ɺ$7ʜ
    w ίϛϡχέʔγϣϯ

    View Slide

  54. 'PSUIF'VUVSF

    View Slide

  55. কདྷʹ޲͚ͯߟ͍͑ͯΔ͜ͱ
    w )FBEMFTT$.4ʢϔουϨε$.4ʣ
    w όοΫΤϯυͱϑϩϯτΤϯυͷ੾Γ཭͠
    w ΞΫηγϏϦςΟ

    View Slide

  56. ͓·͚

    View Slide

  57. ϓϥάΠϯ
    w ϓϥάΠϯબͼ͸γϏΞʹʂ
    w ʮϓϥάΠϯΛΠϯετʔϧ͢Δʹୈࡾऀͷ
    ίʔυΛऔΓࠐΉʯͱ͍͏͜ͱΛ๨Εͣʹ
    w ༗ྉ͸ཁ஫ҙʢର৅WFSɺͱ͔ʜʣ
    w ࣮ࡍͲͷϓϥάΠϯΛ࢖͍ͬͯΔ͔஌Γ͍ͨํ
    ͸ޙͰฉ͍͍ͯͩ͘͞

    View Slide

  58. ηΩϡϦςΟ
    w ʹηΩϡϦςΟɺʹηΩϡϦςΟʜ
    w ʢ୲౰ൣғʹ΋ΑΓ·͕͢ʣαΠτͷσβΠ
    ϯ΍ߴ଎Խɺߋ৽ͷ͠΍͢͞ʜͳͲΑΓ΋ॏ
    ཁͳλεΫ
    w ηΩϡϦςΟϦεΫͷ೺Ѳɾରࡦ
    w ύεϫʔυʂύεϫʔυʂύεϫʔυʂ

    View Slide

  59. αʔόʔ
    w ʢاۀʹΑΓ·͕͢ʣݸਓ޲͚Ϩϯλϧαʔ
    όʔͱ͸Ϣʔβʔͷݖݶઃఆ͕ҧ͍·͢
    w ΦʔφʔɺϢʔβʔݖݶɺύʔϛογϣϯ
    ͳͲͷઃఆ͕བྷΈ߹͍ɺݸਓ޲͚αʔόʔ
    Ͱ͸໰୊ͳ͔ͬͨ͜ͱ͕ى͖Δ
    w ͋ͨΓલͷ͜ͱͰ͸͋Γ·͕͢ɺ๻ͷΑ͏ʹ
    ಠ্ֶ͕Γͷ৔߹͸ؾΛ͚͍ͭͯͩ͘͞ʜ

    View Slide

  60. Πϯϋ΢ε։ൃ
    ͔ͩΒͦ͜

    View Slide

  61. ૸Γͳ͕Βͷ
    ܧଓతͳΞδϟΠϧ։ൃΛ
    ໨ࢦͦ͏

    View Slide

  62. ͋Γ͕ͱ͏͍͟͝·ͨ͠

    View Slide