it-swarm.asia

إرفاق WYSIWYG بـ Drupal نموذج

باستخدام نموذج Drupal مخصص ، كيف يمكنك إرفاق وظيفة WYSIWYG بمنطقة نصية باستخدام وحدة WYSIWYG؟

12
Kevin

راجع هذا المؤشر إلى Drupal 7 (مع القليل من الإشارة إلى drupal 6) http://drupal.org/node/103116 =. على وجه التحديد حول كيفية عرض محرر داخل textarea في drupal 7 ، لذلك أعتقد أنه قد يكون مفيدًا للبدء (يبدو أن التعليق الأخير قد تم اختباره بطريقة).

قد يكون بديلاً للقيام بذلك بدلاً من ذلك مع WYSIWYG.

2
cigotete

ترتبط وحدة wysiwyg بنظام تنسيق الإدخال.

استعمال '#type' => 'text_format' عند تحديد منطقة النص الخاص بك.

8
Dylan Tack

يجب عليك استخدام type = 'text_format' بدلاً من منطقة النص. وشكل = "editor_format". سيبدو الرمز على هذا النحو.

$form['description'] = array(
  '#type' => 'text_format',
  '#title' => t('Description'),
  '#format' => 'full_html' //the format used for editor.
);
7
Paulson Peter

تلك هي خاصتي:

$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 لأنه لم يتم تحميله بعد حفظه.

مرجع 7x Form API

4
Francisco Corrales Morales

وحدة WYSIWYG ليست سوى طريقة لاستخدام واحد من العديد من محرري Wysiwyg. بمجرد تثبيت وحدة wysiwyg ( http://drupal.org/project/wysiwyg ) ، انتقل إلى تكوين الوحدة (admin/config/content/wysiwyg). سيكون هناك تعليمات التثبيت للعديد من محرري Wysiwyg المتاحة. على سبيل المثال ، بالنسبة لـ FCKeditor ، تقول ما يلي:

استخرج الأرشيف وانسخ محتوياته في مجلد جديد في الموقع التالي: sites/all/libraries/fckeditor

حتى يمكن العثور على المكتبة الفعلية على: sites/all/libraries/fckeditor/fckeditor.js

لذا ، قم بتنزيل المحرر ، واستخرج الأرشيف إلى الدليل المحدد. بمجرد القيام بذلك (بافتراض أنك قمت بذلك بشكل صحيح) ، ستتمكن من تغيير المحرر لتنسيقات الإدخال المحددة على شاشة تكوين Wysiwyg. ستحتاج بعد ذلك إلى تعيين عمليات مختلفة لكل نوع (HTML مفلتر ، HTML كامل ، إلخ). انقر على "تعديل" ضمن العمليات داخل admin/config/content/wysiwyg في الصف لأي تنسيق إدخال تهتم به. من هنا ، تحقق من الأزرار التي تريدها.

0
mrryanjohnston

لا يبدو أنه من الممكن مع 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" بتعيين الصفحات التي يتم عرض المحرر لها ، ولكن الوحدة النمطية لا توفر أي حقل نموذج لتغيير هذا الرمز ، ولا تستخدم أي وظيفة هذه القيمة.

قد يكون تم استخدام هذه القيمة في الإصدارات السابقة ، ولا يزال الرمز للتعامل معها قيد النقل ، أو يتم تقديم هذا الخيار في الإصدارات التالية من الوحدة النمطية.

0
kiamlaluno