जवाबों:
Drupal 7 (drupal 6 के लिए थोड़ा संकेत के साथ) http://drupal.org/node/1021160 पर इस संकेत की समीक्षा करें । विशेष रूप से ड्रुपल 7 में textarea के अंदर एक संपादक को प्रदर्शित करने के तरीके के बारे में है, इसलिए मुझे लगता है कि शुरू करने के लिए उपयोगी हो सकता है (लगता है कि अंतिम टिप्पणी का परीक्षण तरीका है)।
इसके बजाय WYSIWYG के साथ ऐसा करने का विकल्प हो सकता है।
आपको पाठ क्षेत्र के बजाय टाइप = 'text_format' का उपयोग करना चाहिए। और प्रारूप = 'editor_format'। कोड इस तरह दिखेगा।
$form['description'] = array(
'#type' => 'text_format',
'#title' => t('Description'),
'#format' => 'full_html' //the format used for editor.
);
यह रहा मेरा:
$form['my_module_my_form_my_field'] = array(
'#type' => 'text_format',
'#title' => t('Awesome title'),
'#format' => isset($edit['format']) ? $edit['format'] : NULL,
'#base_type' => 'textarea',
'#default_value' => variable_get('my_module_my_form_my_field', '')['value'],
'#description' => t("Awesome description."),
'#required' => FALSE,
'#maxlength' => 500,
);
मुझे ['value']
इस #default_value
कारण से जोड़ना पड़ा क्योंकि इसे सहेजने के बाद लोड नहीं किया जा रहा था।
variable_get('foo', '')['value']
प्रत्यय वास्तव में आवश्यक है।
WYSIWYG मॉड्यूल केवल वहाँ से बाहर कई wysiwyg संपादकों में से एक का उपयोग करने का एक तरीका है। एक बार जब आप wysiwyg मॉड्यूल ( http://drupal.org/project/wysiwyg ) स्थापित कर लेते हैं, तो मॉड्यूल के लिए कॉन्फ़िगरेशन पर जाएं (व्यवस्थापक / कॉन्फ़िगरेशन / सामग्री / wysiwyg)। कई Wysiwyg संपादकों के लिए इंस्टॉलेशन निर्देश उपलब्ध होंगे। उदाहरण के लिए, FCKeditor के लिए, यह निम्नलिखित कहता है:
संग्रह को निकालें और उसकी सामग्री को निम्नलिखित स्थान पर एक नए फ़ोल्डर में कॉपी करें: साइटें / सभी / पुस्तकालय / fckeditor
तो वास्तविक पुस्तकालय में पाया जा सकता है: साइटों / सभी / पुस्तकालयों / fckeditor / fckeditor.js
इसलिए, संपादक को डाउनलोड करें, दिए गए निर्देशिका में संग्रह को निकालें। एक बार जब आप ऐसा करते हैं (यह मानते हुए कि आपने इसे सही तरीके से किया है), तो आप Wysiwyg config स्क्रीन पर दिए गए इनपुट स्वरूपों के लिए संपादक को बदल सकेंगे। फिर आपको प्रत्येक प्रकार (फ़िल्टर किए गए HTML, पूर्ण HTML, आदि) के लिए अलग-अलग संचालन असाइन करने की आवश्यकता होगी। आप जिस भी इनपुट में आपकी रुचि रखते हैं, उसके लिए पंक्ति में व्यवस्थापक / कॉन्फ़िग / सामग्री / wysiwyg के भीतर "संपादन" पर क्लिक करें। यहाँ से, जाँच करें कि आपको कौन से बटन चाहिए।
ऐसा लगता है कि यह Wysiwyg संस्करण 7.x-2 के साथ संभव नहीं है, लेकिन प्रोफ़ाइल सेटिंग्स के लिए फॉर्म बिल्डर निम्नलिखित का उपयोग करता है:
$profile['settings'] += array(
'default' => TRUE,
'user_choose' => FALSE,
'show_toggle' => TRUE,
'theme' => 'advanced',
'language' => 'en',
'access' => 1,
'access_pages' => "node/*\nuser/*\ncomment/*",
'buttons' => array(),
'toolbar_loc' => 'top',
'toolbar_align' => 'left',
// ...
);
"Access_pages" एरे इंडेक्स को उन पृष्ठों के लिए सेट करने की अनुमति देता है जिसके लिए संपादक दिखाया गया है, लेकिन मॉड्यूल उस कोड को बदलने के लिए कोई फॉर्म फ़ील्ड प्रदान नहीं करता है, और न ही कोई फ़ंक्शन उस मान का उपयोग करता है।
यह हो सकता है कि पिछले संस्करणों में मूल्य का उपयोग किया गया था, और इसे संभालने के लिए कोड अभी भी पोर्ट किया जा रहा है, या उस विकल्प को मॉड्यूल के अगले संस्करणों के भीतर पेश किया जा रहा है।