web-gelistirme-sc.com

WYSIWYG'yi Drupal Formuna ekle

Özel bir Drupal formuyla, WYSIWYG işlevini WYSIWYG modülü ile bir metin alanına nasıl ekleyebilirsiniz?

12
Kevin

bu göstergeyi Drupal 7 (küçük bir göstergeyle drupal 6) http://drupal.org/node/103116 özellikle. drupal 7 içinde textarea içinde bir editör görüntüleme hakkında özellikle, bu yüzden başlamak için yararlı olabilir sanırım (son yorum test edilmiş bir yol var gibi görünüyor).

bunun yerine/WYSIWYG ile bir alternatif olabilir.

2
cigotete

Wysiwyg modülü giriş formatı sistemine bağlıdır.

Metin alanınızı tanımlarken '#type' => 'text_format' Kullanın.

8
Dylan Tack

Metin alanı yerine type = 'text_format' kullanmalısınız. ve format = 'düzenleyici_formu'. Kod şöyle görünecektir.

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

İşte benim:

$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 çünkü kaydedildikten sonra yüklenmiyor.

7x Form API Referansı

WYSIWYG modülü, birçok wysiwyg editöründen birini kullanmanın bir yoludur. Wysiwyg modülünü ( http://drupal.org/project/wysiwyg ) kurduktan sonra, modülün yapılandırmasına gidin (admin/config/content/wysiwyg). Mevcut birçok Wysiwyg editörleri için kurulum talimatları olacaktır. Örneğin, FCKeditor için şunları söylüyor:

Arşivi çıkartın ve içeriğini şu konumda yeni bir klasöre kopyalayın: sites/all/libraries/fckeditor

Böylece, gerçek kütüphane şurada bulunabilir: sites/all/library/fckeditor/fckeditor.js

Yani, editörü indirin, arşivi verilen dizine çıkarın. Bunu yaptıktan sonra (doğru yaptığınızı varsayarsak), Wysiwyg yapılandırma ekranındaki belirli giriş biçimleri için düzenleyiciyi değiştirebilirsiniz. Daha sonra her tür için farklı işlemler atamanız gerekir (filtrelenmiş HTML, tam HTML vb.). Hangi giriş biçimiyle ilgilendiğinizi öğrenmek için satırdaki admin/config/content/wysiwyg içindeki işlemler altında "Düzenle" yi tıklayın. Buradan, istediğiniz düğmeleri kontrol edin.

0
mrryanjohnston

Wysiwyg sürüm 7.x-2 ile mümkün görünmüyor, ancak profil ayarları için form oluşturucu aşağıdaki diziyi kullanıyor:

  $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" dizi dizini, düzenleyicinin hangi sayfalar için gösterileceğini ayarlamaya izin verir, ancak modül bu kodu değiştirmek için herhangi bir form alanı sağlamaz ve herhangi bir işlev bu değeri kullanmaz.

Bu değer önceki sürümlerde kullanılmış olabilir ve işlenecek kod hala taşınıyor olabilir veya bu seçenek modülün sonraki sürümlerinde kullanılmaya başlanmış olabilir.

0
kiamlaluno