หมายเหตุสำหรับนักพัฒนา
แม้ว่าการติดตั้ง XOOPS จริงสำหรับการพัฒนาจะคล้ายกับการติดตั้งปกติที่อธิบายไว้แล้ว แต่ก็มีความแตกต่างที่สำคัญเมื่อสร้างระบบที่พร้อมสำหรับนักพัฒนา
ความแตกต่างที่สำคัญอย่างหนึ่งในการติดตั้งของนักพัฒนาก็คือ แทนที่จะเน้นไปที่เนื้อหาของไดเร็กทอรี htdocs การติดตั้งของนักพัฒนาจะเก็บไฟล์ทั้งหมดไว้ และเก็บไว้ภายใต้การควบคุมซอร์สโค้ดโดยใช้ git
ข้อแตกต่างอีกประการหนึ่งก็คือ ไดเร็กทอรี xoops_data และ xoops_lib สามารถคงอยู่ได้โดยไม่ต้องเปลี่ยนชื่อ ตราบใดที่ระบบการพัฒนาของคุณไม่สามารถเข้าถึงได้โดยตรงบนอินเทอร์เน็ตแบบเปิด (เช่น บนเครือข่ายส่วนตัว เช่น หลังเราเตอร์)
นักพัฒนาส่วนใหญ่ทำงานบนระบบ localhost ซึ่งมีซอร์สโค้ด สแตกของเว็บเซิร์ฟเวอร์ และเครื่องมือใดๆ ที่จำเป็นในการทำงานกับโค้ดและฐานข้อมูล
คุณสามารถดูข้อมูลเพิ่มเติมได้ในบท เครื่องมือการค้า
Git และโฮสต์เสมือน
หัวข้อที่มีชื่อว่า “Git และโฮสต์เสมือน”นักพัฒนาส่วนใหญ่ต้องการติดตามข่าวสารล่าสุดเกี่ยวกับแหล่งที่มาปัจจุบัน และสนับสนุนการเปลี่ยนแปลงกลับไปยังพื้นที่เก็บข้อมูลอัปสตรีม XOOPS/XoopsCore27 บน GitHub ซึ่งหมายความว่า แทนที่จะดาวน์โหลดไฟล์เก็บถาวร Release คุณจะต้อง fork สำเนาของ XOOPS และใช้ git เพื่อ clone ที่เก็บข้อมูลนั้นไปยังกล่อง dev ของคุณ
เนื่องจากพื้นที่เก็บข้อมูลมีโครงสร้างเฉพาะ แทนที่จะเป็นไฟล์ copying จากไดเร็กทอรี htdocs ไปยังเว็บเซิร์ฟเวอร์ของคุณ จึงเป็นการดีกว่าที่จะชี้เว็บเซิร์ฟเวอร์ของคุณไปที่โฟลเดอร์ htdocs ภายในพื้นที่เก็บข้อมูลที่โคลนในเครื่องของคุณ เพื่อให้บรรลุเป้าหมายนี้ โดยทั่วไปเราจะสร้าง Virtual Host ใหม่ หรือ vhost ที่ชี้ไปยังซอร์สโค้ดที่ควบคุมด้วย git ของเรา
ในสภาพแวดล้อม WAMP หน้า [localhost] เริ่มต้น (http://localhost/) มีในส่วน Tools ลิงก์ไปยัง Add a Virtual Host ซึ่งนำไปสู่ที่นี่:

การใช้สิ่งนี้คุณสามารถตั้งค่ารายการ VirtualHost ที่จะดรอปลงในพื้นที่เก็บข้อมูลที่ควบคุม git (ยังคง) ของคุณ
นี่คือตัวอย่างรายการใน wamp64/bin/apache/apache2.x.xx/conf/extra/httpd-vhosts.conf
<VirtualHost *:80> ServerName xoops.localhost DocumentRoot "c:/users/username/documents/github/xoopscore27/htdocs" <Directory "c:/users/username/documents/github/xoopscore27/htdocs/"> Options +Indexes +Includes +FollowSymLinks +MultiViews AllowOverride All Require local </Directory></VirtualHost>คุณอาจต้องเพิ่มรายการใน Windows/System32/drivers/etc/hosts:
127.0.0.1 xoops.localhostตอนนี้คุณสามารถติดตั้งบน http://xoops.localhost/ เพื่อการทดสอบ ในขณะที่ยังคงรักษาพื้นที่เก็บข้อมูลของคุณไว้เหมือนเดิม และเก็บเว็บเซิร์ฟเวอร์ไว้ในไดเร็กทอรี htdocs ด้วยคำสั่ง URL แบบง่ายๆ นอกจากนี้ คุณยังสามารถอัปเดตสำเนา XOOPS ในเครื่องของคุณให้เป็นเวอร์ชันต้นแบบล่าสุดได้ตลอดเวลาโดยไม่ต้องติดตั้งหรือคัดลอกไฟล์ใหม่ และคุณสามารถปรับปรุงและแก้ไขโค้ดเพื่อสนับสนุน XOOPS ผ่านทาง GitHub ได้
การพึ่งพาผู้แต่ง
หัวข้อที่มีชื่อว่า “การพึ่งพาผู้แต่ง”XOOPS 2.7.0 ใช้ ผู้แต่ง เพื่อจัดการการอ้างอิง PHP แผนผังการพึ่งพาอยู่ใน htdocs/xoops_lib/ ภายในแหล่งเก็บข้อมูลต้นทาง:
composer.dist.jsonคือรายการหลักของการอ้างอิงที่มาพร้อมกับการเปิดตัวcomposer.jsonเป็นสำเนาในเครื่อง ซึ่งคุณสามารถปรับแต่งให้เหมาะกับสภาพแวดล้อมการพัฒนาของคุณได้ หากจำเป็นcomposer.lockปักหมุดเวอร์ชันที่แน่นอน เพื่อให้การติดตั้งสามารถทำซ้ำได้vendor/มีไลบรารีที่ติดตั้งไว้ (Smarty 4, PHPMailer, HTMLPurifier, firebase/php-jwt, monolog, symfony/var-dumper, xoops/xmf, xoops/regdom และอื่นๆ)
สำหรับโคลนคอมไพล์ใหม่ของ XOOPS 2.7.0 โดยเริ่มจากรูท repo ให้รัน:
cd htdocs/xoops_libcomposer installโปรดทราบว่าไม่มี composer.json ที่ราก repo — โปรเจ็กต์อยู่ภายใต้ htdocs/xoops_lib/¤ ดังนั้นคุณต้อง cd ลงในไดเร็กทอรีนั้นก่อนที่จะรัน Composer
Release tarballs มาพร้อมกับ vendor/ ที่เติมไว้ล่วงหน้า แต่ git clone อาจไม่ รักษา vendor/ ไว้ครบถ้วนในการติดตั้งเพื่อการพัฒนา — XOOPS จะโหลดการอ้างอิงจากที่นั่นขณะรันไทม์
ไลบรารี XMF (XOOPS Module Framework) ไลบรารี่จัดส่งเป็นการพึ่งพา Composer ใน 2.7.0 ดังนั้นคุณสามารถใช้ Xmf\Request Xmf\Database\TableLoad และคลาสที่เกี่ยวข้องในโค้ดโมดูลของคุณโดยไม่ต้องติดตั้งเพิ่มเติม
โมดูลแถบดีบั๊ก
หัวข้อที่มีชื่อว่า “โมดูลแถบดีบั๊ก”XOOPS 2.7.0 จัดส่งโมดูล DebugBar ที่ใช้ Symfony VarDumper เพิ่มแถบเครื่องมือดีบักให้กับหน้าที่แสดงผลซึ่งเปิดเผยข้อมูลคำขอ ฐานข้อมูล และเทมเพลต ติดตั้งจากพื้นที่ผู้ดูแลระบบโมดูลบนไซต์การพัฒนาและการจัดเตรียม อย่าปล่อยให้ติดตั้งไว้บนไซต์การผลิตที่หันหน้าเข้าหาสาธารณะ เว้นแต่คุณจะรู้ว่าต้องการ