logo

एक्स्ट्रा ब्लॉक टाइप्स (EBT) - नया लेआउट बिल्डर अनुभव❗

एक्स्ट्रा ब्लॉक टाइप्स (EBT) - स्टाइलिश, कस्टमाइज़ेबल ब्लॉक टाइप्स: स्लाइडशो, टैब्स, कार्ड्स, एकॉर्डियन्स और कई अन्य। बैकग्राउंड, DOM बॉक्स, जावास्क्रिप्ट प्लगइन्स के लिए बिल्ट-इन सेटिंग्स। आज ही लेआउट बिल्डिंग का भविष्य अनुभव करें।

डेमो EBT मॉड्यूल्स EBT मॉड्यूल्स डाउनलोड करें

❗एक्स्ट्रा पैराग्राफ टाइप्स (EPT) - नया पैराग्राफ्स अनुभव

एक्स्ट्रा पैराग्राफ टाइप्स (EPT) - एनालॉजिकल पैराग्राफ आधारित मॉड्यूल्स का सेट।

डेमो EPT मॉड्यूल्स EPT मॉड्यूल्स डाउनलोड करें

स्क्रॉल
03/10/2025, by Ivan

Menu

Drupal कुछ निश्चित नामकरण सम्मेलनों (naming conventions) के आधार पर टेम्पलेट्स लोड करता है। यह आपको अपने थीम में टेम्पलेट जोड़कर और उन्हें विशिष्ट नाम देकर टेम्पलेट्स को ओवरराइड करने की अनुमति देता है।

टेम्पलेट जोड़ने के बाद, आपको कैश को पुनर्निर्माण (rebuild) करना होगा ताकि Drupal आपके नए टेम्पलेट को पहचान सके।

आप Twig टेम्पलेट्स को डिबग कर सकते हैं ताकि यह पता चल सके कि किसी दिए गए एलिमेंट की मार्कअप आउटपुट के लिए कौन से टेम्पलेट्स उपयोग किए जा रहे हैंTwig डिबगिंग के बारे में और पढ़ें।

इस पेज पर HTML की मूल संरचना, पेजेज़, रीजन, ब्लॉक्स, नोड्स, फ़ील्ड्स और अन्य प्रमुख घटकों के लिए उपयोग किए जाने वाले नामकरण सम्मेलनों को सूचीबद्ध किया गया है। (यह जानना भी उपयोगी है कि आप hook_theme_suggestions_HOOK_alter() का उपयोग करके अपने स्वयं के टेम्पलेट नामकरण सुझाव बना सकते हैं।)

HTML (<head> टेम्पलेट)

HTML टेम्पलेट HTML पेज की मूल संरचना के लिए मार्कअप प्रदान करता है, जिसमें <head>, <title> और <body> टैग शामिल हैं।

बेस टेम्पलेट: html.html.twig (स्थान: core/modules/system/templates/html.html.twig)

बेस टेम्पलेट को ओवरराइड करने के कुछ उदाहरण:

  1. html--[internalviewpath].html.twig
  2. html--node--[nodeid].html.twig
  3. html.html.twig

देखें: html.html.twig API दस्तावेज़

Page टेम्पलेट

टेम्पलेट: page--[front|internal/path].html.twig
बेस टेम्पलेट: page.html.twig (स्थान: core/modules/system/templates/page.html.twig)

पेज टेम्पलेट्स के लिए सुझाव अनेक होते हैं। होमपेज को सर्वोच्च प्राथमिकता मिलती है। अन्य सुझाव वर्तमान पेज के internal path पर आधारित होते हैं। होमपेज सेट करने के लिए: Administration > Configuration > System > Site information (http://example.com/admin/config/system/site-information). होमपेज टेम्पलेट: page--front.html.twig
ध्यान दें कि internal path और path aliases अलग होते हैं। path aliases को टेम्पलेट नाम में नहीं माना जाता।

सुझाए गए फाइलें internal paths के आधार पर specificity क्रम में सूचीबद्ध की जाती हैं। उदाहरण: “http://www.example.com/node/1/edit” निम्नलिखित सुझाव उत्पन्न करेगा:

  1. page--node--edit.html.twig
  2. page--node--1.html.twig
  3. page--node.html.twig
  4. page.html.twig

देखें: page.html.twig API दस्तावेज़। नीचे देखें Maintenance page टेम्पलेट

Regions

टेम्पलेट: region--[region].html.twig
बेस टेम्पलेट: region.html.twig (स्थान: core/modules/system/templates/region.html.twig)

Region टेम्पलेट का उपयोग तब होता है जब किसी पेज रीजन में कंटेंट होता है, चाहे वह block system से हो या hook_page_top() या hook_page_bottom() जैसी functions से। संभावित region नाम थीम की .info.yml फ़ाइल में परिभाषित होते हैं।

देखें: region.html.twig API दस्तावेज़

Blocks

टेम्पलेट: block--[module|--[delta].html.twig
बेस टेम्पलेट: block.html.twig (स्थान: core/modules/block/templates/block.html.twig)

  1. block--[module]--[delta].html.twig
  2. block--[module].html.twig
  3. block.html.twig

“module” मॉड्यूल का नाम है, और “delta” उस ब्लॉक का आंतरिक पहचानकर्ता है जिसे मॉड्यूल ने असाइन किया है।

उदाहरण: “block--block--1.html.twig” पहला user-submitted block है, जिसे Block मॉड्यूल द्वारा ID 1 के साथ बनाया गया है। Region-specific block टेम्पलेट्स Drupal 8 में उपलब्ध नहीं हैं।

यदि आपके पास “custom” नामक मॉड्यूल द्वारा बनाया गया ब्लॉक है और delta “my-block” है, तो टेम्पलेट का नाम होगा: block--custom--my-block.html.twig

Views के ब्लॉक्स के लिए: यदि view का नाम “front_news” है और display ID “block_1” है, तो टेम्पलेट का नाम होगा: block--views-block--front-news-block-1.html.twig। ध्यान दें कि underscores को dashes में बदलना होगा।

ध्यान रखें: इस संदर्भ में मॉड्यूल नाम case-sensitive होते हैं। यदि मॉड्यूल का नाम “MyModule” है, तो सामान्य सुझाव होगा: block--MyModule.html.twig

देखें: block.html.twig API दस्तावेज़

Nodes

टेम्पलेट: node--[content-type|nodeid]--[viewmode].html.twig
बेस टेम्पलेट: node.html.twig (स्थान: core/modules/node/templates/node.html.twig)

टेम्पलेट सुझाव निम्न क्रम में होते हैं (सबसे विशिष्ट से कम विशिष्ट तक):

  1. node--[nodeid]--[viewmode].html.twig
  2. node--[nodeid].html.twig
  3. node--[content-type]--[viewmode].html.twig
  4. node--[content-type].html.twig
  5. node--[viewmode].html.twig
  6. node.html.twig

ध्यान दें: content-type machine name में underscores (_) को dashes (-) से बदलना चाहिए।

देखें: node.html.twig API दस्तावेज़

Taxonomy terms

टेम्पलेट: taxonomy-term--[vocabulary-machine-name|tid].html.twig
बेस टेम्पलेट: taxonomy-term.html.twig (स्थान: core/modules/taxonomy/templates/taxonomy-term.html.twig)

टेम्पलेट सुझाव:

  1. taxonomy-term--[tid].html.twig
  2. taxonomy-term--[vocabulary-machine-name].html.twig
  3. taxonomy-term.html.twig

ध्यान दें: vocabulary machine name में underscores (_) को dashes (-) से बदलें।

देखें: taxonomy-term.html.twig API दस्तावेज़

Fields

टेम्पलेट: field--[[type|name]|[entity-type]--[field-name|content-type]].html.twig
बेस टेम्पलेट: field.html.twig (स्थान: core/modules/system/templates/field.html.twig)

टेम्पलेट सुझाव (सबसे विशिष्ट से सामान्य तक):

  1. field--node--[field-name]--[content-type].html.twig
  2. field--node--[field-name].html.twig
  3. field--node--[content-type].html.twig
  4. field--[field-name].html.twig
  5. field--[field-type].html.twig
  6. field.html.twig

ध्यान दें: field machine name में underscores (_) को dashes (-) से बदलें। और custom field के नामों में “field-” प्रीफ़िक्स शामिल करें, जैसे: field--field-phone.html.twig

देखें: field.html.twig API दस्तावेज़

Comments

टेम्पलेट: comment--[comment-field-name]--[node-type].html.twig
बेस टेम्पलेट: comment.html.twig (स्थान: core/modules/comment/templates/comment.html.twig)

यह सपोर्ट जोड़ता है कि आप किसी विशेष node type के कमेंट्स को अलग टेम्पलेट से रेंडर कर सकें। उदाहरण: article node पर कमेंट टेम्पलेट होगा comment--field-comments--article.html.twig

देखें: comment.html.twig API दस्तावेज़

Comment wrappers

टेम्पलेट: field--node--[comment-field-name]--[content-type].html.twig
बेस टेम्पलेट: field--comment.html.twig

Forums

टेम्पलेट: forums--[[container|topic]--forumID].html.twig
बेस टेम्पलेट: forums.html.twig (स्थान: core/modules/forum/templates/forums.html.twig)

Forum containers:

  1. forums--containers--[forumid].html.twig
  2. forums--[forumid].html.twig
  3. forums--containers.html.twig
  4. forums.html.twig

Forum topics:

  1. forums--topics--[forumid].html.twig
  2. forums--[forumid].html.twig
  3. forums--topics.html.twig
  4. forums.html.twig

देखें: forums.html.twig API दस्तावेज़

Maintenance page

टेम्पलेट: maintenance-page--[offline].html.twig
बेस टेम्पलेट: maintenance-page.html.twig (स्थान: core/modules/system/templates/maintenance-page.html.twig)

यह तब लागू होता है जब डेटाबेस उपलब्ध नहीं होता। उपयोगी है ताकि error messages के बिना user-friendly पेज दिखाया जा सके। Maintenance page थीम को पहले सही तरीके से कॉन्फ़िगर करना चाहिए।

देखें: maintenance-page.html.twig API दस्तावेज़

ध्यान दें: maintenance-page--offline.html.twig फाइल तब रेंडर नहीं होती जब डेटाबेस डाउन होता है। समस्या #2720109 देखें

Search result

टेम्पलेट: search-result--[search-type].html.twig
बेस टेम्पलेट: search-result.html.twig (स्थान: core/modules/search/templates/search-result.html.twig)

search-result.html.twig डिफ़ॉल्ट wrapper है। अलग-अलग search प्रकारों के लिए अलग-अलग सुझाव दिए जाते हैं। उदाहरण: “example.com/search/node/Search+Term” → search-result--node.html.twig। “example.com/search/user/bob” → search-result--user.html.twig

देखें: search-result.html.twig API दस्तावेज़

Views

सभी views टेम्पलेट्स को views ID, display ID, display type आदि के आधार पर ओवरराइड किया जा सकता है।

हर view कम से कम दो टेम्पलेट्स का उपयोग करता है:
1. views-view.html.twig
2. चयनित view style का टेम्पलेट। डिफ़ॉल्ट: views-view-unformatted.html.twig

Row style का डिफ़ॉल्ट: views-view-fields.html.twig

टेम्पलेट्स:

  • views-view--[viewid]--[view-display-id].html.twig
  • views-view--[viewid]--[view-display-type].html.twig
  • views-view--[view-display-type].html.twig
  • views-view--[viewid].html.twig
  • views-view.html.twig

बेस टेम्पलेट: views-view.html.twig (स्थान: core/themes/stable/templates/views/views-view.html.twig)

उदाहरण: “views-view.html.twig” को ओवरराइड करने के लिए मान्य नाम:

  • views-view--[viewid]--[view-display-id].html.twig
  • views-view--[viewid]--page.html.twig
  • views-view--block.html.twig
  • views-view--[viewid].html.twig
  • views-view.html.twig

views-view-field.html.twig आधारित टेम्पलेट्स में field ID suffix होता है:

  • views-view-field--[viewid]--[view-display-id]--[fieldid].html.twig
  • views-view-field--[viewid]--page--[fieldid].html.twig
  • views-view-field--block--[fieldid].html.twig
  • views-view-field--[fieldid].html.twig
  • views-view-field.html.twig

उदाहरण: view “foobar” (style: unformatted, row style: fields, display: page):

  • views-view--foobar--page.html.twig
  • views-view--page.html.twig
  • views-view--foobar.html.twig
  • views-view.html.twig
  • views-view-unformatted--foobar--page.html.twig
  • views-view-unformatted--page.html.twig
  • views-view-unformatted--foobar.html.twig
  • views-view-unformatted.html.twig
  • views-view-fields--foobar--page.html.twig
  • views-view-fields--page.html.twig
  • views-view-fields--foobar.html.twig
  • views-view-fields.html.twig