दृश्य के साथ बनाई गई वीडियो गैलरी में दिखाए गए नोड्स के URL तक सीधे पहुंच कैसे सीमित करें?


10

मैंने व्यूज का उपयोग करके एक वीडियो गैलरी बनाई है । लेकिन मैं केवल यही चाहता हूं कि पृष्ठ सार्वजनिक रूप से सुलभ हो और व्यक्तिगत रूप से प्रत्येक वीडियो तक पहुंच को रोका जा सके।

वीडियो को एक प्रकार की सामग्री के रूप में बनाया जाना था, इसलिए उन सभी में सुलभ ULR जैसे /content/video-1, आदि हैं।

जवाबों:


5

सामग्री एक्सेस मॉड्यूल आज़माएं और videoव्यक्तिगत रूप से सामग्री तक पहुंच को रोकें (या आप अपनी इच्छा के लिए भी इसे एक्सेस कर सकते हैं roles)

यह मॉड्यूल आपको भूमिका और लेखक द्वारा सामग्री प्रकारों के लिए अनुमतियों को प्रबंधित करने की अनुमति देता है। यह आपको प्रत्येक सामग्री प्रकार के लिए कस्टम दृश्य निर्दिष्ट, संपादित करने और हटाने की अनुमति देता है। वैकल्पिक रूप से आप प्रति सामग्री एक्सेस सेटिंग्स को सक्षम कर सकते हैं, ताकि आप प्रत्येक सामग्री नोड के लिए पहुँच को अनुकूलित कर सकें।

इसके अलावा, आप नोड दृश्य अनुमतियाँ मॉड्यूल का उपयोग कर सकते हैं , लेकिन मेरा सुझाव है कि उपयोग करें Content access module

(यदि आप भविष्य के लिए ड्रुपल के साथ काम करना चाहते हैं तो बेहतर है कि इस उपयोगी मॉड्यूल के साथ भागीदारी करें)


लगभग मुझे जो चाहिए था। अंत में मैंने निम्न-स्तर के माध्यम से पहुंच को नियंत्रित किया, क्योंकि कुछ मामलों में होम पेज को पुनर्निर्देशित करना चाहता था, अन्य में 404, आदि, इसलिए मेरा बेहतर नियंत्रण था, लेकिन मुझे लगता है कि यह मॉड्यूल अधिकांश मामलों में काम कर सकता है। शायद मेरे मामले में एक बेहतर समायोजन के साथ, लेकिन जांच के लिए समय नहीं था।
सीजर

3

नोड दृश्य अनुमतियाँ मॉड्यूल स्थापित करें ।

अनुमतियाँ पृष्ठ पर प्रत्येक सामग्री प्रकार के लिए नोड दृश्य अनुमतियाँ मॉड्यूल "अपनी सामग्री देखें" और "किसी भी सामग्री को देखें" अनुमति को सक्षम करता है क्योंकि यह ड्रूप 6 पर था।

अब गोटो अनुमति पेज और बेनामी उपयोगकर्ता के लिए वीडियो सामग्री प्रकार से किसी भी सामग्री की अनुमति देखें

यदि आप चाहते हैं कि वीडियो गैलरी से केवल कुछ ही वीडियो अनाम उपयोगकर्ता के लिए सुलभ हों, तो Deny Access मॉड्यूल इंस्टॉल करें ।


1

बस अपनी सामग्री प्रकार अपडेट करें।

  1. कोई सांख्यिक फ़ील्ड जैसे डिस्प्ले_ऑर्डर आदि जोड़ें

  2. इस फ़ील्ड का मान केवल उन वीडियो के लिए सेट करें जिन्हें आप दिखाना चाहते हैं।

  3. अपनी दृश्य सेटिंग पर जाएं और सेट करें;

    पेजर का उपयोग करें: एक निर्दिष्ट संख्या में आइटम प्रदर्शित करें | एक्स आइटम

    जहाँ x no.of वीडियो है जिसे आप दिखाना चाहते हैं

  4. फिर प्रदर्शन-क्रम द्वारा छँटाई लागू करें

आशा है कि यह काम करेगा।


1

मुझे लगता है कि खरगोश छेद मॉड्यूल बिल्कुल वही करता है जो आप खोज रहे हैं। यहाँ मॉड्यूल के विवरण पृष्ठ का एक अंश आपकी आवश्यकता का उत्तर दे रहा है। सौभाग्य।

रैबिट होल एक ऐसा मॉड्यूल है, जो उस स्थिति को नियंत्रित करने की क्षमता जोड़ता है, जब किसी इकाई को अपने पेज पर देखा जा रहा हो।

शायद आपके पास एक सामग्री प्रकार है जिसे कभी भी अपने पृष्ठ पर प्रदर्शित नहीं किया जाना चाहिए, जैसे कि एक हिंडोला में प्रदर्शित छवि सामग्री प्रकार। खरगोश छेद इस नोड को नोड / xxx के माध्यम से अपने स्वयं के पृष्ठ पर सुलभ होने से रोक सकता है।


1

खरगोश छेद मॉड्यूल के लिए जाओ , यह बिल्कुल वैसा ही करता है। सभी सामग्री दृश्य / कोड के माध्यम से सुलभ है, लेकिन जब आप विस्तार पृष्ठ "सामग्री / ***" तक पहुंचने का प्रयास करते हैं तो यह या तो अस्वीकृत है या आप रीडायरेक्ट सेट कर सकते हैं।


मैं इसे एक सवारी दूंगा, धन्यवाद। फिलहाल, मैंने इसे निम्न स्तर पर हल किया है, लेकिन पहले से ही कस्टम मॉड्यूल को जानना सबसे अच्छा है।
सीजर

0

1) अपने सामग्री प्रकार में एक बूलियन मान फ़ील्ड बनाएँ ।

2) यदि मान को सत्य के रूप में चुना जाता है, तो उस वीडियो फ़ील्ड में एक अद्वितीय वर्ग जोड़ा जाना चाहिए, यदि मान का चयन किया जाता है तो उस वर्ग को उस वीडियो फ़ील्ड में जोड़ा नहीं जाना चाहिए।

3) उन वीडियो को छिपाने के लिए कुछ सीएसएस लिखें जहां कक्षा मौजूद नहीं है।


0

नियम मॉड्यूल का उपयोग करके आप एक नियम लागू कर सकते हैं जो इस तरह दिखता है:

{ "rules_disallow_accesss_to_selected_urls" : {
    "LABEL" : "Disallow access to selected URLs",
    "PLUGIN" : "reaction rule",
    "OWNER" : "rules",
    "REQUIRES" : [ "rules" ],
    "ON" : { "init" : [] },
    "IF" : [
      { "text_matches" : {
          "text" : [ "site:current-page:url" ],
          "match" : "content\/video-1",
          "operation" : "regex"
        }
      }
    ],
    "DO" : [
      { "drupal_message" : {
          "message" : "Sorry, access to URLs like [site:current-page:url] is not allowed ...",
          "type" : "error"
        }
      },
      { "redirect" : { "url" : "no_access" } }
    ]
  }
}

संबंधित पथ पर पहुंचने का प्रयास करने वाला कोई भी व्यक्ति पथ के content/video-1साथ एक पृष्ठ पर पुनर्निर्देशित हो जाएगा no_access, और संबंधित त्रुटि संदेश दिखाया जाएगा (अपने स्वयं के सम्मेलनों को फिट करने के लिए इस पथ को अनुकूलित करें, और दिखाए जाने वाले संदेश की समीक्षा करें)।

उपरोक्त नियम केवल सापेक्ष पथ content/video-1(आपके प्रश्न के अनुसार) तक पहुंच को प्रतिबंधित करता है । यदि आप नियम को समान URL में विस्तारित करना चाहते content\/video-1हैं content\/video-\\d+$, तो किसी चीज़ में परिवर्तन करें , या कोई भी भिन्नता जो आपके रास्तों के नामकरण सम्मेलन में फिट बैठता है।

उपरोक्त नियम (अभी तक) केवल चयनित भूमिकाओं वाले उपयोगकर्ताओं के लिए नियम कार्रवाई लागू करने के लिए ध्यान में नहीं रखते हैं। लेकिन नियम मॉड्यूल से परिचित किसी के लिए, यह जोड़ने के लिए एक सीधा आगे "शर्त" है ... उदाहरण के लिए: संपादक, व्यवस्थापक, आदि जैसी भूमिका वाले उपयोगकर्ताओं के लिए नियम कार्रवाई को छोड़ दें, जिसे आप एक नियम जोड़कर कर सकते हैं। "उपयोगकर्ता के पास भूमिका व्यवस्थापक (और / या संपादक) नहीं है" जैसी स्थिति है। इस तरह के विशेष प्रकार के उपयोगकर्ता अभी भी ऐसे नोड्स देख सकते हैं (ऐसी अतिरिक्त स्थिति के बिना वे भी अब ऐसे नोड्स नहीं देख सकते हैं ...)।

अपनी खुद की साइट में इस नियम के साथ प्रयोग करने के लिए, बस ऊपर दिए गए पूरे नियम कोड को कॉपी करें, और इसे "आयात" फ़ंक्शन (यदि नियम UI सक्षम हो तो उपलब्ध) के माध्यम से अपनी साइट में एक नए नियम में पेस्ट करें। फिर इसे अपने वातावरण में फिट करने के लिए संपादित / परिशोधित करें (उदाहरण के लिए "क्षमा करें, ..." संदेश दिखाया जाना चाहिए)।

अतिरिक्त शोधन

अन्य उत्तरों में से एक में आपने एक टिप्पणी जोड़ी है जिसमें यह शामिल है:

... मैं कुछ मामलों में होम पेज को पुनर्निर्देशित करना चाहता था, अन्य में 404, आदि, इसलिए मेरा बेहतर नियंत्रण था ...

यदि आप भी यही करना चाहते हैं, तो आप सशर्त नियम मॉड्यूल को भी जोड़कर उपरोक्त नियम क्रिया को और परिष्कृत कर सकते हैं। उसके बाद, आपके प्रत्येक "कुछ मामलों" के लिए आप फिर से रीडायरेक्ट करने के लिए उपयुक्त URL निर्दिष्ट कर सकते हैं। एक नियम एक्शन के भीतर इस मॉड्यूल का उपयोग कैसे करें, इसके उदाहरण के लिए " किसी सूची बॉक्स के मूल्य के आधार पर कुछ क्षेत्रों के मूल्यों को कैसे निर्धारित करें? " के मेरे उत्तर का संदर्भ लें ।

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