2.4. सामग्री के साथ कार्य। टेक्स्ट फ़ॉर्मेट्स।
Drupal साइटें आमतौर पर इंटरनेट पर प्रकाशित (publish) करने के लिए बनाई जाती हैं। और जैसे ही आप साइट को ऑनलाइन डालते हैं, यह पूरे विश्व के लिए उपलब्ध हो जाती है — जिसमें स्पैमर्स और क्रॉलर भी शामिल होते हैं जो आपकी साइट पर स्पैम या अपना कोड डालने के अवसर की तलाश में रहते हैं। Drupal में सुरक्षा जांच (checks) और टेक्स्ट फ़िल्टर मौजूद हैं जो डेटा एंट्री फ़ॉर्म्स से कोड का पता लगाकर उसे निष्क्रिय (neutralize) करते हैं (इस विषय पर अधिक जानकारी के लिए आप XSS हमलों के बारे में पढ़ सकते हैं)।
चलिए जाएँ Configuration → Content authoring → Text formats and editors पर:
/admin/config/content/formats
यहाँ हमें डिफ़ॉल्ट रूप से चार टेक्स्ट फ़ॉर्मेट्स दिखाई देते हैं — Full HTML, Basic HTML, Restricted HTML, और Plain text। ये ऊपर से नीचे की ओर क्रम में लागू होते हैं: यदि उपयोगकर्ता के पास आवश्यक भूमिका (role) है, तो वह फ़िल्टर लागू होगा; यदि नहीं, तो उसके नीचे वाला फ़िल्टर लागू होगा। जितना नीचे फ़िल्टर होगा, उतना अधिक टेक्स्ट फ़िल्टर हो जाएगा और उतने अधिक चेक्स लागू होंगे।
चलिए Full HTML को सबसे ऊपर रखते हैं — यह सबसे अधिक लचीला (loyal) फ़िल्टर है, इसमें सबसे कम जाँच होती है, और इसे हम प्रशासकों (administrators) के लिए डिफ़ॉल्ट रखेंगे:
अब चलिए Basic HTML सेटिंग्स में जाएँ और गुमनाम उपयोगकर्ताओं (anonymous users) के लिए फ़िल्टर भूमिकाएँ (filter roles) सेट करें, ताकि वे भी CKEditor (विजुअल एडिटर) का उपयोग कर सकें।
कृपया ध्यान दें कि CKEditor डिफ़ॉल्ट रूप से निष्क्रिय (disabled) रहता है, और यह उचित कारण से किया गया है। पुराने विजुअल एडिटर्स आपकी साइट में सुरक्षा कमजोरियाँ (vulnerabilities) पैदा कर सकते हैं। और जब आप CKEditor को गुमनाम उपयोगकर्ताओं के लिए सक्षम करते हैं, तो आप सभी के लिए एक संभावित सुरक्षा छिद्र खोलते हैं। लेकिन चिंता न करें — CKEditor Drupal में अंतर्निहित (built-in) है और Drupal के साथ ही अपडेट होता रहेगा।
आगे की सेटिंग्स में, हम आइकनों के समूह (groups) बना सकते हैं और आवश्यक आइकन उनमें खींचकर (drag) रख सकते हैं। उदाहरण के लिए, मैंने एक Alignment समूह बनाया और उसमें टेक्स्ट संरेखण (text alignment) के लिए आइकन जोड़े।
इसके बाद, हम CKEditor के माध्यम से फ़ाइल अपलोड सेटिंग को कॉन्फ़िगर कर सकते हैं — हालांकि, डिफ़ॉल्ट रूप से सब कुछ पहले से ही सही तरीके से सेट होता है:
इसके बाद, हम टेक्स्ट फ़ॉर्मेट के लिए फ़िल्टर सेट कर सकते हैं। ध्यान दें फ़िल्टर “Limit allowed HTML tags and correct faulty HTML” पर — यह Basic HTML के लिए मुख्य फ़िल्टर है। यह टेक्स्ट फ़ील्ड्स से JavaScript कोड को हटा देता है और केवल आवश्यक HTML टैग्स को छोड़ता है। अन्य फ़िल्टर्स को आप अपनी आवश्यकता के अनुसार सक्षम या अक्षम कर सकते हैं।
हम सक्षम (enabled) फ़िल्टर्स को नीचे दिए क्रम में व्यवस्थित कर सकते हैं। यहाँ मुख्य फ़िल्टर “Limit allowed HTML tags and correct faulty HTML” को सबसे ऊपर होना चाहिए ताकि वह सभी JavaScript कोड को अन्य फ़िल्टर्स के चलने से पहले हटा दे।
और अंत में, हम यह निर्धारित कर सकते हैं कि फ़िल्टरिंग के बाद कौन से HTML टैग्स बचे रहेंगे। सामान्यतः, यहाँ टैग्स की एक पर्याप्त सूची पहले से दी होती है, इसलिए आप इसे ऐसे ही छोड़ सकते हैं। लेकिन मैं यहाँ rel="nofollow" जोड़ने की सलाह दूँगा ताकि साइट पर स्पैम टिप्पणियाँ (spam comments) हमारे SEO प्रमोशन को नुकसान न पहुँचाएँ।