Nota untuk Pembangun
Walaupun pemasangan sebenar XOOPS untuk kegunaan pembangunan adalah serupa dengan pemasangan biasa yang telah diterangkan, terdapat perbezaan utama apabila membina sistem sedia pembangun.Satu perbezaan besar dalam pemasangan pembangun ialah daripada hanya memfokuskan pada kandungan direktori htdocs, pemasangan pembangun menyimpan semua fail dan menyimpannya di bawah kawalan kod sumber menggunakan git.Perbezaan lain ialah direktori xoops_data dan xoops_lib biasanya boleh kekal di tempatnya tanpa menamakan semula, selagi sistem pembangunan anda tidak boleh diakses secara langsung di internet terbuka (iaitu pada rangkaian peribadi, seperti di belakang penghala.)Kebanyakan pembangun bekerja pada sistem localhost, yang mempunyai kod sumber, timbunan pelayan web dan sebarang alat yang diperlukan untuk berfungsi dengan kod dan pangkalan data.Anda boleh mendapatkan maklumat lanjut dalam bab Tools of the Trade.## Git dan Hos MayaKebanyakan pembangun mahu dapat mengikuti perkembangan terkini dengan sumber semasa dan menyumbangkan perubahan kembali kepada huluan repositori XOOPS/XoopsCore27 pada GitHub. Ini bermakna daripada memuat turun arkib keluaran, anda perlu membuang salinan XOOPS dan menggunakan git untuk klon repositori itu ke kotak pembangun anda.Memandangkan repositori mempunyai struktur khusus, bukannya copying fail daripada direktori htdocs ke pelayan web anda, adalah lebih baik untuk menghalakan pelayan web anda ke folder htdocs di dalam repositori klon setempat anda. Untuk menyelesaikannya, kami biasanya mencipta Hos Maya baharu, atau vhost yang menunjuk kepada kod sumber terkawal git kami.Dalam persekitaran WAMP, halaman lalai localhost mempunyai dalam bahagian Tools pautan ke Tambah Hos Maya yang menuju ke sini:
Menggunakan ini, anda boleh menyediakan entri VirtualHost yang akan jatuh terus ke dalam repositori terkawal git (masih) anda.Berikut ialah entri contoh dalam wamp64/bin/apache/apache2.x.xx/conf/extra/httpd-vhosts.conf
text<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>Anda juga mungkin perlu menambah entri dalam Windows/System32/drivers/etc/hosts:
text127.0.0.1 XOOPS.localhostKini, anda boleh memasang pada http://XOOPS.localhost/ untuk ujian, sambil mengekalkan repositori anda utuh, dan memastikan pelayan web di dalam direktori htdocs dengan URL ringkas. Selain itu, anda boleh mengemas kini salinan tempatan anda XOOPS kepada induk terkini pada bila-bila masa tanpa perlu memasang semula atau menyalin fail. Dan, anda boleh membuat peningkatan dan pembetulan pada kod untuk menyumbang kembali kepada XOOPS melalui GitHub.## Ketergantungan KomposerXOOPS 2.7.0 menggunakan Komposer untuk mengurus kebergantungan PHPnya. Pokok pergantungan hidup dalam htdocs/xoops_lib/ di dalam repositori sumber:* composer.dist.json ialah senarai induk kebergantungan yang dihantar bersama keluaran.
composer.jsonialah salinan tempatan, yang boleh anda sesuaikan untuk persekitaran pembangunan anda jika perlu.composer.lockpin versi tepat supaya pemasangan boleh dihasilkan semula.vendor/mengandungi perpustakaan yang dipasang (Smarty 4, PHPMailer, HTMLPurifier, firebase/php-jwt, monolog, symfony/var-dumper, XOOPS/XMF, XOOPS/regdom, dan lain-lain).Untuk klon git segar XOOPS 2.7.0, bermula dari akar repo, jalankan:
textcd htdocs/xoops_libcomposer installAmbil perhatian bahawa tiada composer.json pada akar repo — projek itu hidup di bawah htdocs/xoops_lib/, jadi anda mesti cd ke dalam direktori itu sebelum menjalankan Komposer.Lepaskan tarballs dihantar dengan vendor/ pra-isi, tetapi klon git mungkin tidak. Pastikan vendor/ kekal pada pemasangan pembangunan — XOOPS akan memuatkan kebergantungannya dari sana pada masa jalan.Pustaka XMF (XOOPS Module Framework) dihantar sebagai kebergantungan Komposer dalam 2.7.0, jadi anda boleh menggunakan XMF\Request, XMF\Database\TableLoad tanpa sebarang pemasangan kelas dan kod yang berkaitan.## Modul DebugBarXOOPS 2.7.0 menghantar modul DebugBar berdasarkan Symfony VarDumper. Ia menambahkan bar alat nyahpepijat pada halaman yang diberikan yang mendedahkan permintaan, pangkalan data dan maklumat templat. Pasangnya dari kawasan pentadbir Modul pada tapak pembangunan dan pementasan. Jangan biarkan ia dipasang pada tapak pengeluaran yang menghadap awam melainkan anda tahu anda mahu.