/ / XSLT-Umbraco में केवल प्रकाशित आइटम का चयन कैसे करें? - xslt, tumraco

xslt-Umbraco में केवल प्रकाशित आइटम्स का चयन करने के लिए कैसे?-xslt, Umbraco

मेरे पास एक फोटो स्लाइडर है, अगला और प्रचलित हैबटन, और जब आप एक बटन पर क्लिक करते हैं, तो एक पॉप-अप विंडो दिखाई देती है और फ़ोटो के बड़े आकार को दिखाती है। मैं Umbraco का उपयोग करते हुए, xslt मैक्रो गैलरी फ़ोल्डर के भीतर नोड्स दिखाता है। xslt "गैलरी / Photo" ns.W.When का चयन करता है एक फोटो अपलोड करें, अगर मैं इसे प्रकाशित नहीं करता हूं, तो स्लाइडर के अगले / प्रचलित बटन नहीं लगते हैं और न ही पॉप-अप काम करते हैं। मैं Xslt में केवल प्रकाशित वस्तुओं का चयन कैसे कर सकता हूं? अग्रिम धन्यवाद।

उत्तर:

उत्तर № 1 के लिए 1

मैं देख रहा हूं कि यह बहस फिर छिड़ गई है। यह समस्या का सीधा जवाब नहीं है, लेकिन क्या आपको Umbraco को थोड़ा बेहतर समझना चाहिए ...

Umbraco और XSLT

हालांकि Umbraco मुख्य रूप से सभी डेटा चलाता हैMS SQL डेटाबेस से, लेकिन यह डेटा को हर बार कैश करता है एक पृष्ठ "छिपी" XML फ़ाइल के भीतर प्रकाशित / अप्रकाशित। यह किसी भी प्रत्यक्ष XML संपादन के डेवलपर को मुक्त करता है और इसे Umbraco पर छोड़ देता है। हालाँकि, किसी डेवलपर के लिए यह भूलना आसान है या नहीं भी जानता है।

फ़ाइल निम्नलिखित स्थानों में से किसी एक में पाई जा सकती है, यह निर्भर करता है कि आप किस संस्करण का उपयोग कर रहे हैं:

~/App_Data/umbraco.config
~/config/umbraco.config

समस्या

XSLTs का उपयोग कर चलाते हैं umbraco.config फ़ाइल के रूप में यह XML स्रोत है। हालाँकि, इस फ़ाइल में केवल प्रकाशित नोड्स होंगे। XML से अप्रकाशित नोड्स को पूरी तरह से हटा दिया जाएगा, इसलिए XSLTs को अप्रकाशित नोड्स तक पहुंचने में सक्षम नहीं होना चाहिए।

मुझे संदेह है कि समस्या को अप्रकाशित नोड्स के अलावा कुछ और करना पड़ सकता है।


जवाब के लिए 0 № 2

अपने XSLT को देखे बिना यह अनुमान लगाना मुश्किल है कि आप क्या कर रहे हैं। प्रकाशित नोड्स। इसका कारण यह है कि डेटा XSLT का उपयोग कैश की गई XML संरचना है, जो umbraco.config में पाई जाती है।

तो, क्या हो रहा है कि आप वास्तव में नोड्स को बाहर करना चाहते हैं जो अभी तक एक छवि को असाइन नहीं किया है (भले ही नोड स्वयं प्रकाशित हो)।

आप ऐसा कुछ का उपयोग कर ऐसा कर सकते हैं:

$currentPage//GalleryNode [image != ""]

यह वर्तमान पृष्ठ के अंतर्गत सभी गैलरीनोड तत्वों का चयन करेगा जिसमें एक छवि संपत्ति निर्दिष्ट है।

यदि यह मामला है, तो आप किसी भी नोड को छवि के बिना प्रकाशित होने से रोकने के लिए छवि संपत्ति को अनिवार्य बनाने पर विचार कर सकते हैं।