इसे छोड़कर कंटेंट पर जाएं

डेवलपर्स के लिए नोट्स

जबकि विकास के उपयोग के लिए XOOPS की वास्तविक स्थापना पहले से वर्णित सामान्य स्थापना के समान है, डेवलपर के लिए तैयार सिस्टम बनाते समय महत्वपूर्ण अंतर हैं।

डेवलपर इंस्टॉल में एक बड़ा अंतर यह है कि केवल htdocs निर्देशिका की सामग्री पर ध्यान केंद्रित करने के बजाय, एक डेवलपर इंस्टॉल सभी फाइलों को रखता है, और उन्हें गिट का उपयोग करके स्रोत कोड नियंत्रण में रखता है।

एक और अंतर यह है कि xoops_data और xoops_lib निर्देशिकाएं आमतौर पर बिना नाम बदले तब तक अपनी जगह पर बनी रह सकती हैं, जब तक कि आपका विकास सिस्टम खुले इंटरनेट पर सीधे पहुंच योग्य न हो (यानी एक निजी नेटवर्क पर, जैसे राउटर के पीछे)।

अधिकांश डेवलपर्स localhost सिस्टम पर काम करते हैं, जिसमें स्रोत कोड, एक वेब सर्वर स्टैक और कोड और डेटाबेस के साथ काम करने के लिए आवश्यक कोई भी उपकरण होता है।

आप अधिक जानकारी व्यापार के उपकरण अध्याय में पा सकते हैं।

गिट और वर्चुअल होस्ट

Section titled “गिट और वर्चुअल होस्ट”

अधिकांश डेवलपर्स वर्तमान स्रोतों के साथ अद्यतित रहने में सक्षम होना चाहते हैं, और अपस्ट्रीम में परिवर्तन में योगदान देना चाहते हैं [XOOPS/XoopsCore27 रिपॉजिटरी GitHub]https://github.com/XOOPS/XoopsCore27 पर। इसका मतलब यह है कि रिलीज़ संग्रह को डाउनलोड करने के बजाय, आप XOOPS की एक प्रति fork चाहते हैं और उस रिपॉजिटरी को अपने डेव बॉक्स में git से क्लोन का उपयोग करना चाहेंगे।

चूँकि रिपॉजिटरी की एक विशिष्ट संरचना होती है, इसलिए htdocs निर्देशिका से फ़ाइलों को अपने वेब सर्वर पर कॉपी करने के बजाय, अपने वेब सर्वर को अपने स्थानीय रूप से क्लोन किए गए रिपॉजिटरी के अंदर htdocs फ़ोल्डर में इंगित करना बेहतर होता है। इसे पूरा करने के लिए, हम आम तौर पर एक नया वर्चुअल होस्ट या vhost बनाते हैं जो हमारे git controlled source code. की ओर इशारा करता है

[WAMP]http://www.wampserver.com/) वातावरण में, डिफ़ॉल्ट लोकलहोस्ट पेज के टूल्स अनुभाग में वर्चुअल होस्ट जोड़ें के लिए एक लिंक होता है जो यहां जाता है:

WAMP वर्चुअल होस्ट जोड़ें

इसका उपयोग करके आप एक VirtualHost प्रविष्टि सेट कर सकते हैं जो सीधे आपके (अभी भी) git controlled repository. में आ जाएगी

यहां 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/ पर इंस्टॉल कर सकते हैं, अपनी रिपॉजिटरी को बरकरार रखते हुए, और वेबसर्वर को एक साधारण URL के साथ htdocs निर्देशिका के अंदर रख सकते हैं। साथ ही, आप फ़ाइलों को पुनः इंस्टॉल या कॉपी किए बिना किसी भी समय XOOPS की अपनी स्थानीय प्रतिलिपि को नवीनतम मास्टर में अपडेट कर सकते हैं। और, आप GitHub के माध्यम से XOOPS पर वापस योगदान करने के लिए कोड में संवर्द्धन और सुधार कर सकते हैं।

संगीतकार निर्भरताएँ

Section titled “संगीतकार निर्भरताएँ”

XOOPS 2.7.0 अपनी PHP निर्भरता को प्रबंधित करने के लिए संगीतकार का उपयोग करता है। निर्भरता वृक्ष स्रोत भंडार के अंदर htdocs/xoops_lib/ में रहता है:

  • composer.dist.json रिलीज़ के साथ भेजी गई निर्भरता की मास्टर सूची है।
  • composer.json स्थानीय प्रतिलिपि है, जिसे आप आवश्यकता पड़ने पर अपने विकास परिवेश के लिए अनुकूलित कर सकते हैं।
  • composer.lock सटीक संस्करण पिन करता है ताकि इंस्टॉल पुनरुत्पादित हो सके।
  • vendor/ में स्थापित लाइब्रेरीज़ शामिल हैं (Smarty 4, PHPMailer, HTMLPurifier, firebase/php-jwt, मोनोलॉग, सिम्फनी/var-dumper, xoops/xmf, xoops/regdom, और अन्य)।

ताज़ा git clone of XOOPS 2.7.0, starting from the repo root, run: के लिए

cd htdocs/xoops_lib
composer install

ध्यान दें कि रेपो रूट पर कोई composer.json नहीं है - प्रोजेक्ट htdocs/xoops_lib/ के अंतर्गत रहता है, इसलिए आपको कंपोज़र चलाने से पहले उस निर्देशिका में cd डालना होगा।

रिलीज़ टारबॉल vendor/ पूर्व-आबादी के साथ जहाज, लेकिन git clones may not. Keep vendor/ intact on development installs — XOOPS will load its dependencies from there at runtime.

XMF (XOOPS मॉड्यूल फ्रेमवर्क) लाइब्रेरी 2.7.0 में कंपोजर निर्भरता के रूप में आती है, इसलिए आप बिना किसी अतिरिक्त इंस्टॉलेशन के अपने मॉड्यूल कोड में Xmf\Request, Xmf\Database\TableLoad और संबंधित कक्षाओं का उपयोग कर सकते हैं।

DebugBar मॉड्यूलXOOPS 2.7.0 सिम्फनी VarDumper पर आधारित एक DebugBar मॉड्यूल शिप करता है। यह रेंडर किए गए पेजों पर एक डिबग टूलबार जोड़ता है जो अनुरोध, डेटाबेस और टेम्पलेट जानकारी को उजागर करता है। इसे विकास और स्टेजिंग साइटों पर मॉड्यूल व्यवस्थापक क्षेत्र से स्थापित करें। जब तक आप नहीं जानते कि आप ऐसा करना चाहते हैं, तब तक इसे किसी सार्वजनिक-सामना वाली उत्पादन साइट पर स्थापित न छोड़ें।

Section titled “DebugBar मॉड्यूलXOOPS 2.7.0 सिम्फनी VarDumper पर आधारित एक DebugBar मॉड्यूल शिप करता है। यह रेंडर किए गए पेजों पर एक डिबग टूलबार जोड़ता है जो अनुरोध, डेटाबेस और टेम्पलेट जानकारी को उजागर करता है। इसे विकास और स्टेजिंग साइटों पर मॉड्यूल व्यवस्थापक क्षेत्र से स्थापित करें। जब तक आप नहीं जानते कि आप ऐसा करना चाहते हैं, तब तक इसे किसी सार्वजनिक-सामना वाली उत्पादन साइट पर स्थापित न छोड़ें।”