หลังจากที่ Focus กับการจัดการงานต่างๆ ในชีวิตมาสักระยะ หยุดงาน Community ใน Joomla! มาหลายปี ด้วยความหวังว่า จะได้เห็นคนใหม่ๆ มาทำต่อ แต่ก็เหมือนทุกอย่างจะหยุดนิ่ง และด้วยตัวผมเอง ก็ไม่ได้รู้สึกตื่นเต้นอะไรกับ Joomla! 3.x (หรืออาจจะหมดวัย ที่จะตื่นเต้นกับอะไรกับเทคโนโลยีแล้ว) วันนี้พอเห็นเพื่อน JoomlaShaper เสนอ idea สำหรับ Template Admin เพื่อใช้กับ Joomla! 4 ที่อยู่ระหว่างการพัฒนา พอเห็นและทีมลงแรงทำ จนผ่านเข้ามาสู่การยอมรับที่จะนำมาใช้ใน Joomla! 4 แต่ยังต้องการทุกคนช่วยกันลงมือทำเพื่อให้มันเสร็จสมบูรณ์พร้อมที่จะออกมาใช้งาน ในระหว่างที่ Joomla! 4 ก็ยังพัฒนาเพิ่มเติมอยู่เช่นกัน ทีมส่วนใหญ่จึง Focus อยู่กับ Joomla! 4 ตัวหลัก ใน Project j4adminui (Template ตัวใหม่) จึงต้องการอีกหลายคนช่วยกัน ด้วยความที่ผมเองอยากเห็น Template ตัวนี้ถูกรวมมาใน Joomla!4 จึงขอเป็น 1 คนที่ลงมือทำ วันนี้จึงขอบันทึกวิธีการช่วย โดยที่ไม่จำเป็นต้องเขียน Code เพื่อแก้ไข Issue ที่มีคนแจ้งไว้ สำหรับท่านที่เป็น DevOps หรือ Developer ดูข้ามๆ ไปได้เลย หรือใช้สภาพแวดล้อมตามความถนัดครับ
สำหรับการติดตั้ง Joomla! 4 จาก GitHub โดยตรงนั้นสิ่งที่ต้องเตรียมเพิ่มมากกว่า Joomla! 3.x
รายละเอียดสำหรับการเตรียมสถาพแวดล้อมสำหรับ Joomla! 4 https://docs.joomla.org
สิ่งที่จำเป็นต้องใช้
- PHP - เหมือนที่เราต้องใช้ในการ Run เว็บ Joomla! แต่กรณีนี้ต้องการ cli (command line interface) เวอร์ชั่น (ดูได้ใน Configuring LAMPP server for PHP development)
- Composer - สำหรับ managing Joomla's PHP Dependencies. การติดตั้ง Composer ดูได้ในเว็บ https://getcomposer.org
- Node.js - สำหรับคอมไพล์ Joomla's Javascript และ SASS ไฟล์ การติดตั้ง Node.js ก็ดูใน https://nodejs.org/en/
- Git - สำหรับ version management.
ผมเสริมอีกนิดควรจะตัองสร้าง User บน GitHub.com ด้วยครับ เพื่อไว้ตั้ง Issue หรือ Comment ใน Source Project ครับ ขออนุญาติข้ามรายละเอียดการเตรียม Environment นะครับ
สำหรับของผม ใช้เครื่อง Mac ลอง MAMP ไว้นานแล้วก็แค่อับเดดเวอร์ชั่น MAMP สักหน่อยแล้วก็ติดตั้ง Composer / Node.js สำหรับเครื่อง Mac พอเรียบร้อยแล้ว คำสั่งที่เราจะใช้จะเป้นดังนี้ครับ
ขั้นตอนการติดตั้งจาก GitHub : https://github.com/joomla-projects/j4adminui
- Clone the repository:
- Go to the j4adminui folder:
- Install all the needed composer packages:
- Install all the needed npm packages:
รอมันทำจดเสร็จ จากนั้น ก็เปิด browser ทำการติดตั้ง Joomla! (คล้ายๆ กับที่ติดตั้งๆ Joomla! เวอร์ชั่นก่อนหน้านี้) พอเสร็จแล้วก็ Login เข้าหน้า Administrator
ทดสอบ Patch
เปิดเข้าหน้า Terminal เพื่อ run คำสั่งดังนี้ครับ
- git fetch origin pull/140/head <- เปลี่ยนตัวเลขไปตามเลข Pull Request ครับ
- git checkout FETCH_HEAD
- npm run build:js && npm run build:css
พอมัน compile เสร็จ เราทดสอบดูว่าปัญหาใน Pull request นั้น สามารถแก้ปัญหาใน issue ที่อ้างถึงได้หรือไม่ แล้วก็ comment ผลการทดสอบไปครับ pull request ไหน ผ่านการทดสอบอย่างน้อย 2 ท่าน จึงจะถูก Merge รวม Code เข้าไปใน Project ครับ