केवल मॉड्यूल और कोई घटक के साथ पृष्ठ कैसे बनाएं?


10

जूमला में, मुझे हर पृष्ठ को एक घटक दृश्य से जोड़ना होगा। मैं उस पर कोई घटक आउटपुट वाला पेज कैसे बना सकता हूं ?

उदाहरण: मेरे होम पेज पर मुझे केवल एक मॉड्यूल आउटपुट चाहिए। इसके लिए, मैं होम पेज को "खाली लेख" से लिंक कर सकता हूं, लेकिन क्या थर्ड पार्टी एक्सटेंशन का उपयोग किए बिना ऐसा करने का एक बेहतर तरीका है?


2
क्या आप एक कस्टम टेम्पलेट, या एक वाणिज्यिक टेम्पलेट का उपयोग कर रहे हैं? मैं पूछता हूं क्योंकि उनमें से कई के पास घटक क्षेत्र को पूरी तरह से बंद करने का विकल्प है।
ब्रायन पीट

@BrianPeat मैं
वेब-टिकी

आह ठीक है। अच्छी तरह से यहाँ कई अच्छे जवाब हैं जो तब काम करना चाहिए :)
ब्रायन पीट

2
इसी प्रकार के प्रश्न: joomla.stackexchange.com/questions/5056/...
FFrewin

जवाबों:


15

वास्तव में इससे बेहतर तरीका नहीं है।

केवल दूसरा विकल्प यह जांचना है कि आप अपनी टेम्पलेट फ़ाइल में मुखपृष्ठ पर हैं या नहीं। यह जाँचने के लिए कि क्या आप मुखपृष्ठ पर हैं, आप यहाँ डॉक्स पर वर्णित विधि का उपयोग कर सकते हैं:

http://docs.joomla.org/How_to_determine_if_the_user_is_viewing_the_front_page

और कुछ ऐसा करें:

<?php
$menu = JFactory::getApplication()->getMenu();

if ($menu->getActive() != $menu->getDefault()) { ?>
        <jdoc:include type="component" />
<?php } ?>

और इस तरह से आप अपने घटक को होम पेज पर कभी शामिल नहीं करते हैं


1
इस विधि के साथ एक शीर्ष: यदि आपके पास होमपेज से एक लिंक है जो दूसरे पृष्ठ पर नहीं जाता है, तो यह टूट सकता है यदि यह मुखपृष्ठ मेनू आइटम के तहत लोड होता है! किसी भी लिंक के लिए देखें जो कि example.com/component/com_name/viewडिफ़ॉल्ट मेनू आइटम के तहत लोड होने के बाद से है, और घटक का आउटपुट प्रदर्शित नहीं किया जाएगा।
डेविड फ्रिट्च

आप यह सुनिश्चित करने के लिए कुछ और चेक जोड़ना चाह सकते हैं कि वर्तमान घटक और दृश्य ( JFactory::getApplication()->input->get('view')) भी मेनू के दृश्य के समान नहीं है ( $menu->getActive()->view)
डेविड फ्रिट्च

@DavidFritsch: मुझे लगता है कि $ मेनू-> getActive () - दृश्य, $ मेनू होना चाहिए-> getActive () -> क्वेरी ['दृश्य'];
FFrewin

5

JED में एक "रिक्त" घटक भी है जो आपको एक मेनू आइटम प्रकाशित करने देता है ताकि आप केवल मॉड्यूल रख सकें।

http://extensions.joomla.org/extensions/style-a-design/personal-layout/17363


मुझे इस एक्सटेंशन के साथ एक समस्या थी, इसमें वह शामिल नहीं है, router.phpजिसके कारण अमान्य URL 404 के साथ प्रतिक्रिया नहीं दे रहे हैं।
Flim

4

आपकी अनुक्रमणिका फ़ाइल में कई टेम्पलेट लेआउट हो सकते हैं।

<!--Layout 1-->
<?php if ($BConfig->html=='layoutA') : ?>

<jdoc:include type="component" />

<?php endif; ?>  <!--End Layout 1-->

<!--Dynamically Generated Layout 2-->
<?php if ($BConfig->html=='layoutB') : ?>

<jdoc:include type="modules" name="your-module"/>

<?php endif; ?> <!--End Layout 2-->

फिर सुनिश्चित करें कि आपकी टेम्पलेटडेल फ़ाइल में विकल्प बी शामिल हैं। फिर अपने जूमला में! टेम्पलेट, आप लेआउट बी का उपयोग करके एक अतिरिक्त टेम्पलेट सेट कर सकते हैं। अपने होम मेनू आइटम पर जाएं, उस टेम्पलेट का चयन करें। घटक लोड नहीं होगा, लेकिन आपका मॉड्यूल होगा।


2

मूर्ख, बहुत समान, लेकिन काफी आसान समाधान:

  1. एक लेख श्रेणी बनाएँ
  2. इसे बिना किसी सामग्री (लेख) के छोड़ें
  3. इसमें मेनू लिंक बनाएं
  4. अपने मॉड्यूल को उस मेनू लिंक पर असाइन करें

आपको श्रेणी और / या मेनू आइटम मापदंडों में उस श्रेणी के लिए छिपाए जाने के लिए कुछ विवरण बंद करने की आवश्यकता हो सकती है।


1
यह एक खाली लेख का उपयोग करने के समान ही आधारभूत है।
वेब-टिकी

1

आप एक खाली घटक बना सकते हैं। तो com_menus घटक में आप पृष्ठ के साथ तय कर सकते हैं कि केवल उस खाली घटक को चुनने का आउटपुट नहीं होना चाहिए। उस घटक में, आपको default.xml फ़ाइल के साथ एक दृश्य और एक खाली default.php टेम्पलेट बनाने की आवश्यकता होती है, इसलिए जब आप com_menus घटक में घटक चुनने जा रहे हैं तो आपको यह विकल्प दिखाई देगा।


1

RocketThemes में com_content विशेष रुप से प्रदर्शित लेखों को छिपाने के लिए एक आसान सुविधा है।

मैं आउटपुट को कम करने के लिए एक खाली श्रेणी प्रकाशित करने और कुछ CSS स्टाइल के साथ इसे छिपाने के लिए उपयोग करता हूं।


1

टेम्प्लेट को कॉपी करें, jdoc घटक को निकालें और उस स्टाइल को किसी भी मेनू आइटम को असाइन करें जिसमें घटक की आवश्यकता न हो।


0

में जूमला! 3.x आप निम्न कार्य कर सकते हैं:

  • सबसे पहले अपने मॉड्यूल बनाएं,
  • मुख्य साइट के लिए एक नए अनुच्छेद के अंदर एक नई श्रेणी बनाएं,
  • जांचें कि क्या आपने प्लगइन सामग्री - लोड मॉड्यूल को सक्षम किया है

डिफ़ॉल्ट रूप से जूमला! बूटस्ट्रैप v2.3.2 नामक एक पुस्तकालय शामिल है , इसलिए आप इस लाइब्रेरी में css का उपयोग कर सकते हैं, उदाहरण के लिए ग्रिड सिस्टम : http://getbootstrap.com/2.3.2/scaffolding.html#gridSystem

  • यहां से, अपने लेख में आप मॉड्यूल नामक एक बटन देख सकते हैं , बस एक साधारण या बहुत जटिल ग्रिड बना सकते हैं और प्रत्येक ब्लॉक को अपने मॉड्यूल असाइन कर सकते हैं।

इस तरह से उपयोग करके आप जो लाभ प्राप्त कर सकते हैं, वह यह है कि आप कम पदों और कम php, js और css कोड के साथ एक टेम्पलेट को और अधिक प्रकाश प्राप्त कर सकते हैं, इसलिए यदि आपको कई कार्यक्षमताओं की आवश्यकता नहीं है, तो आप इसे स्वयं बना सकते हैं

सादर।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.