
Мар्ग एक्सेस चेकर, hook_entity_access() और वे सब कुछ, जिन्हें AccessResultInterface ऑब्जेक्ट लौटाने की आवश्यकता होती है, उन्हें उपयुक्त कैश करने योग्य मेटाडेटा जोड़ना चाहिए।
अगर आपने अभी तक नहीं पढ़ा है, तो cache tags, cache contexts और max-age पढ़ें।


CKEditor API Drupal 8 में नया है।
ध्यान दें, यह केवल Drupal 8 CKEditor मॉड्यूल API पर लागू होता है, CKEditor JavaScript लाइब्रेरी API पर नहीं — उसके लिए देखें http://docs.ckeditor.com/.
इस मॉड्यूल के काम करने के तरीके पर अधिक जानकारी के लिए देखें Text Editor मॉड्यूल दस्तावेज़.
API की विशेषताएँ
सबसे कम उपयोग किए जाने वाले API से क्रमबद्ध:
CKEditor skins


कॉन्फ़िगरेशन API मॉड्यूल्स के लिए कॉन्फ़िगरेशन डेटा संग्रहीत करने का एक केंद्रीय स्थान प्रदान करता है। यह डेटा simple configuration हो सकता है, जैसे कि आपकी साइट का नाम, या अधिक जटिल जानकारी, जिसे configuration objects जैसे Views और Content Types द्वारा प्रबंधित किया जाता है।
कॉन्फ़िगरेशन वह स्थान है जहाँ आप ऐसी जानकारी संग्रहीत करते हैं जिसे आप development से production तक synchronize करना चाहते हैं। यह जानकारी अक्सर साइट निर्माण के दौरान बनाई जाती है और आमतौर पर सामान्य उपयोगकर्ताओं द्वारा साइट के सामान्य संचालन के दौरान उत्पन्न नहीं की जाती।


Drupal 8 में कई प्रकार की जानकारी होती है:
- Content (कंटेंट)
वह जानकारी जो आपकी साइट पर प्रदर्शित होती है और जिसे उपयोगकर्ता संपादित करते हैं: लेख, बेसिक पेज, चित्र, फाइलें आदि।
- Session (सत्र)
जानकारी जो व्यक्तिगत उपयोगकर्ताओं के साइट के साथ इंटरैक्शन के बारे में होती है, जैसे कि Views के फिल्टर में उनका वर्तमान चयन। यह अस्थायी (ephemeral) और व्यक्तिगत (personalized) होती है।


डिफ़ॉल्ट रूप से Drupal 8 में कॉन्फ़िगरेशन की जानकारी डेटाबेस में संग्रहीत होती है।
कॉन्फ़िगरेशन फ़ाइल फ़ॉर्मेट (YAML)
एक्सटेंशन (मॉड्यूल, थीम और प्रोफ़ाइल) YAML फ़ाइलों में कॉन्फ़िगरेशन डेटा प्रदान करते हैं।
यहाँ एक कॉन्फ़िगरेशन फ़ाइल का उदाहरण है:
some_string: 'Woo kittens!' some_int: 42 some_bool: true
कॉन्फ़िगरेशन nested भी हो सकता है। उदाहरण:


Drupal 8 की कॉन्फ़िगरेशन प्रणाली कॉन्फ़िगरेशन को एकीकृत तरीके से प्रबंधित करती है। डिफ़ॉल्ट रूप से Drupal कॉन्फ़िगरेशन डेटा को डेटाबेस में संग्रहीत करता है, लेकिन इसे YAML फ़ाइलों में निर्यात किया जा सकता है, जिससे संस्करण नियंत्रण (version control) का उपयोग करके कॉन्फ़िगरेशन को प्रबंधित करना संभव होता है। हालाँकि, कुछ स्थितियों में कॉन्फ़िगरेशन मानों को विशिष्ट उद्देश्यों के लिए ओवरराइड करना आवश्यक होता है। Drupal 7 में एक global वेरिएबल $conf था, जिसे अक्सर settings.php में conditional overrides के साथ कॉन्फ़िगरेशन के लिए सेट किया जाता था। इस प्रणाली की बड़ी कमी यह थी कि overrides वास्तवि


Drupal 8 YAML कॉन्फ़िगरेशन फ़ाइलों के लिए Kwalify (http://www.kuwata-lab.com/kwalify/) का उपयोग करके बनाए गए स्कीमा/मेटाडेटा भाषा का समर्थन करता है। स्वयं Kwalify Ruby में लिखा गया है, और हमें फ़ॉर्मेट में कुछ छोटे समायोजन करने पड़े, इसलिए Kwalify की सभी विवरण सीधे लागू नहीं होते, लेकिन यह काफ़ी नज़दीक है।
Cheatsheet
त्वरित समझ और कुछ उपयोगी उदाहरणों के लिए, इस चीटशीट को देखें, और यदि आपके पास अभी भी प्रश्न हैं, तो आगे पढ़ें:


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


यह पेज Drupal 8 के लिए प्रशासनिक प्रबंधन पेजों के साथ एक कॉन्फ़िगरेशन ऑब्जेक्ट प्रकार बनाने का उदाहरण प्रस्तुत करता है। सरल कॉन्फ़िगरेशन और कॉन्फ़िगरेशन ऑब्जेक्ट्स की अवधारणाओं को समझने के लिए देखें https://drupal.org/node/2120523।
नीचे दिए गए कोड को शामिल करने वाले उदाहरण मॉड्यूल को सक्षम करने के बाद, कॉन्फ़िगरेशन फ़ॉर्म का उदाहरण «admin/config/system/example» पर उपलब्ध होना चाहिए, जैसा कि स्क्रीनशॉट में दिखाया गया है:
