logo

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

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

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

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

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

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

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

किसी विशेष एलिमेंट के लिए कौन सा टेम्पलेट मार्कअप जनरेट कर रहा है, यह जानने के लिए आप Twig की बिल्ट-इन debug ऑप्शन का उपयोग कर सकते हैं। यह पैरामीटर HTML-कमेंट्स को रेंडर्ड आउटपुट के साथ दिखाएगा, जिसमें इस्तेमाल किए गए थीम हुक, सुझाए गए टेम्पलेट फ़ाइल नाम और सटीक Twig फ़ाइल शामिल होगी, जो आपके लेआउट के किसी हिस्से को रेंडर करने में प्रयोग हुई है।

02/10/2025, by Ivan

Twig में फ़िल्टर्स का उपयोग वेरिएबल्स को बदलने के लिए किया जा सकता है। फ़िल्टर को वेरिएबल से पाइप (|) सिंबल द्वारा अलग किया जाता है। इनके साथ वैकल्पिक आर्ग्युमेंट्स भी हो सकते हैं। कई फ़िल्टर्स को एक साथ चेन किया जा सकता है। एक फ़िल्टर का आउटपुट अगले फ़िल्टर के इनपुट के रूप में उपयोग होता है।

उदाहरण:

{{ content|safe_join(", ")|lower }}

कभी-कभी आपको फ़िल्टर लगाने से पहले किसी एलिमेंट को render करना पड़ सकता है:

02/10/2025, by Ivan

Twig कई उपयोगी फ़ंक्शंस प्रदान करता है, जिन्हें आप सीधे टेम्पलेट्स में उपयोग कर सकते हैं।

Twig फ़ंक्शंस की सूची

Drupal core कुछ अतिरिक्त कस्टम फ़ंक्शंस जोड़ता है, जो Drupal के लिए विशेष होते हैं। ये TwigExtension क्लास में परिभाषित हैं।

02/10/2025, by Ivan

Twig की आधिकारिक डाक्यूमेंटेशन से: «मैक्रोज़ सामान्य प्रोग्रामिंग भाषाओं में फ़ंक्शंस के समान होते हैं। ये बार-बार उपयोग होने वाले HTML पैटर्न को पुन: प्रयोज्य (reusable) एलिमेंट्स में रखने के लिए उपयोगी हैं, ताकि कोड को दोहराना न पड़े»।

{% macro input(name, value, type, size) %}
  <input type="{{ type|default('text') }}" name="{{ name }}" value="{{ value|e }}" size="{{ size|default(20) }}" />
{% endmacro %}

मैक्रोज़ PHP की नैटिव फ़ंक्शंस से कुछ तरीकों से अलग होते हैं:

02/10/2025, by Ivan

Drupal 8 थीमिंग को अधिकतम परफ़ॉर्मेंस देने और Twig टेम्पलेट्स में बेहतर कस्टमाइज़ेशन विकल्प सुनिश्चित करने के लिए नीचे दिए गए सुझावों का पालन करें:

02/10/2025, by Ivan

Drupal 8 में मुख्य विचार यह है कि आप अपने कस्टम मॉड्यूल के PHP कोड में सीधे HTML बनाने से बचना चाहते हैं। आप चाहते हैं कि यह HTML Twig टेम्पलेट्स में जाए। अपने मॉड्यूल में नए Twig टेम्पलेट्स बनाने के लिए नीचे दिए गए चरणों का पालन करें।

चरण № 1: .module फ़ाइल में hook_theme परिभाषित करें
यदि [module].module फ़ाइल अभी तक मौजूद नहीं है, तो उसे बनाएँ और कोड जोड़ें, जो आपके प्रत्येक Twig टेम्पलेट को परिभाषित करता है। एरे (array) के प्रत्येक एलिमेंट की कुंजी वही होगी, जिसे बाद में टेम्पलेट को कॉल करने के लिए उपयोग करना होगा। फ़ाइल नाम में डैश का उपयोग न करें।

02/10/2025, by Ivan

Twig टेम्पलेट्स को निम्नलिखित सिंटैक्स का उपयोग करके विस्तारित (extend) किया जा सकता है:

{% extends 'html.twig' %}

अधिक जानकारी के लिए देखें: https://symfony.com/doc/current/templates.html#template-inheritance-and-layouts

02/10/2025, by Ivan
सब-थीम्स, किसी भी अन्य थीम की तरह ही होती हैं, केवल एक अंतर के साथ: वे अपनी पैरेंट थीम के संसाधनों (resources) को इनहेरिट करती हैं। सब-थीम्स और उनकी पैरेंट थीम्स को जोड़ने वाली चेन (श्रृंखला) की संभावनाओं पर कोई सीमा नहीं है। एक सब-थीम किसी दूसरी सब-थीम की चाइल्ड हो सकती है, और इसे आपकी ज़रूरत के अनुसार ब्रांच और ऑर्गनाइज़ किया जा सकता है। यही बात सब-थीम्स को बड़ी शक्ति देती है।

सब-थीम बनाने के लिए, उसे किसी अन्य थीम की तरह ही परिभाषित करें और

02/10/2025, by Ivan

Classy — यह Drupal 8 की एक बेस थीम है और वही बेस थीम है जिसे Bartik और Seven उपयोग करते हैं। Classy (और इसकी सब-थीम्स) में मौजूद HTML मार्कअप में ऐसे CSS क्लासेस होते हैं, जो BEM और SMACSS CSS नामकरण कन्वेंशन्स के समान संरचित होते हैं।

हालाँकि Classy द्वारा विकसित BEM / SMACSS स्टाइल नामकरण कन्वेंशन्स बहुत प्रभावी हैं और कई सुविधाएँ प्रदान करते हैं, लेकिन वे हर प्रोजेक्ट के लिए उपयुक्त नहीं होते। जो डेवलपर्स Classy के CSS क्लासेस में रुचि नहीं रखते, वे किसी दूसरी बेस थीम को चुन सकते हैं।

02/10/2025, by Ivan

Drupal8 RC 2 की Classy थीम में मौजूद सभी CSS क्लास सेलेक्टर्स को डॉक्युमेंट करें।

फॉर्मेट:

.foo { }
.foo-bar { }

filename.html.twig / filename.css

Twig - Classy थीम में उपलब्ध CSS सेलेक्टर्स:

LAYOUT

Body

.user-logged-in { }
.path-frontpage { }
.path-[root_path] { }
.node--type-[node_type] { }
.db-offline { }
.visually-hidden { }
.focusable { }
.skip-link { }

फ़ाइल: html.html.twig