मैं Drupal 8 में एक टेम्प्लेट रेंडर करने का प्रयास कर रहा हूं। Drupal 7 में, मैं hook_theme के साथ एक थीम बनाऊंगा, अपने मॉड्यूल में एक टेम्प्लेट डायरेक्टरी बनाऊंगा, टेम्प्लेट फ़ाइल को ड्रॉप करूंगा और मैं इसे थीम () के साथ प्रदर्शित कर सकता हूं। मैं Drupal 8 के साथ कैसे करूँ? मैंने निम्नलिखित की कोशिश की, लेकिन यह गलत है:
Twitter_pull.module में
/ ** * इम्प्लीमेंट्स हुक_टीम ()। * / फ़ंक्शन twitter_pull_theme ($ मौजूदा, $ प्रकार, $ थीम, $ पथ) { वापसी सरणी ( 'twitter_pull_tweet_listing' => सरणी ( 'चर' => सरणी ( 'विवरण' => सरणी (), ), 'टेम्प्लेट' => 'टेम्प्लेट / twitter_pull_tweet_listing', ), ); }
Twitter_pull / टेम्पलेट्स के अंदर: twitter_pull_tweet_listing.html.twig
मेरे ब्लॉक के अंदर:
$ tweet_template = array ('# theme' => 'twitter_pull_tweet_listing', '#attributes' => array ('params' => $ params)); $ आउटपुट = drupal_render ($ tweet_template, array ('params' => $ params)); $ आउटपुट प्रिंट करें;
मुझे अपने लॉग में निम्न त्रुटि मिलती है:
उपयोगकर्ता त्रुटि: "सामग्री" Drupal \ Core \ Render \ Element में एक अमान्य रेंडर सरणी कुंजी है :: बच्चे () (C की पंक्ति 89: \ xampp \ htdocs \ drupal \ core \ lib \ Drupal \ Core's \ender \ तत्व। php)।
संपादित करें: एक और त्रुटि:
Twig_Error_Loader: टेम्प्लेट "मॉड्यूल / कस्टम / twitter_pull / टेम्पलेट्स / टेम्प्लेट / twitter_pull_tweet_listing.html.twig" (": C: \ xampp \ _tdocs \ drupal" देखने में असमर्थ)। in Twig_Loader_Filesystem-> findTemplate () (C की लाइन 202: \ xampp \ htdocs \ drupal \ core \ seller \ twig \ libig \ libig \ Twig \ Loader_ \ _ system_php)।
मुझे लगता है कि यह त्रुटि हो रही है क्योंकि मैं नामस्थान और ऑटोलोडिंग का सही उपयोग नहीं कर रहा हूं। मैं अपनी टेम्पलेट फ़ाइल कहाँ रखूँ? त्रुटि संदेश के आधार पर, मैंने इसे C: \ xampp \ htdocs \ drupal \ टेम्पलेट्स \ पर भी डालने की कोशिश की, लेकिन यह अभी भी काम नहीं किया।
drupal_render()
? यह एक बूलियन उम्मीद कर रहा है
templates/templates/
2 त्रुटि संदेश में हिस्सा मुझे लगता है कि आप की कोशिश करनी चाहिए बनाता है 'template' => 'twitter_pull_tweet_listing',
के बजाय 'template' => 'templates/twitter_pull_tweet_listing',
मेंhook_theme()