$this->baseurl;एक शॉर्टकट एक टेम्पलेट के अंदर से इस्तेमाल किया जा रहा है, इसके बजाय बुलाने की है JURI:base();विधि, जूरी वर्ग की। यह कोर का हिस्सा है और आप इसे पा सकते हैं/libraries/joomla/environment/uri.php (~line 218).
यदि आप विधि को देखते हैं, तो आप देखेंगे कि यह कॉन्फ़िगरेशन फ़ाइल में जांचता है कि क्या $live_urlचर परिभाषित किया गया है। यदि हाँ तो यह इस URL को वापस कर देगा, अन्यथा यह कई अन्य जाँचों से गुजरेगा और आपका वास्तविक आधार URI लौटाएगा।
अधिकांश शायद आप live_url चर में परिभाषित अपने configuration.phpभी शामिल index.phpअंत में। वहां देखें ...
एक और संभावना यह है कि आपके वर्तमान टेम्पलेट / टेम्पलेट सिस्टम ने कहीं न कहीं $this->baseurlसंपत्ति को परिभाषित किया है। आप $this->baseurlअपने टेम्पलेट के index.phpफ़ाइल के शीर्ष पर इसे फिर से परिभाषित करके अपने टेम्पलेट के अंदर आसानी से ओवरराइड कर सकते हैं , जैसे:$this->baseurl = JURI::base();
*अपडेट करें:
- मैंने उल्लेख किया कि आप विधि कहां से प्राप्त कर सकते हैं, लेकिन इसका मतलब यह नहीं है कि आपको वहां जाना चाहिए और कोर में कोई संशोधन करना चाहिए। वह केवल सूचनात्मक उद्देश्यों के लिए था।
अद्यतन 2 - भविष्य के संदर्भों के लिए
इस पोस्ट में दी गई जानकारी को पूरा करने के लिए, JURI::base($pathonly boolean)एक तर्क लेता है, $pathonlyजो एक बूलियन डेटा प्रकार है - falseडिफ़ॉल्ट है।
इसके साथ $pathonly = true, यह साइट के लिए केवल रास्ता लौटाएगा।
उदाहरण:
<?php echo JURI::base(); ?> Would echo something like: http:://localhost/joomla25/
<?php echo JURI::base(true); ?> Would echo: /joomla25
ध्यान दें कि जब $ pathonly = true , URI पथ के अंत में ट्रेलिंग स्लैश ommited है।
live_siteअपने url के लिए कॉन्फ़िगरेशन .php फ़ाइल में चर को बदल दिया (कुछ भी नहीं बदला)। यहाँ परिणाम हैं: नियम 1: my-url.com नियम 2: /index.php नियम 3: / नियम 4: /index.php