it-swarm.it

Allega WYSIWYG a Drupal Modulo

Con un modulo personalizzato Drupal, come si può collegare la funzionalità WYSIWYG a un'area di testo con il modulo WYSIWYG?

12
Kevin

rivedi questa indicazione a Drupal 7 (con una piccola indicazione a drupal 6) http://drupal.org/node/103116 =. in particolare riguarda come visualizzare un editor all'interno di textarea in drupal 7, quindi suppongo che potrebbe essere utile iniziare (sembra che l'ultimo commento abbia un modo testato).

potrebbe essere un'alternativa per farlo invece/con WYSIWYG.

2
cigotete

Il modulo wysiwyg è legato al sistema del formato di input.

Uso '#type' => 'text_format' durante la definizione dell'area di testo.

8
Dylan Tack

Dovresti usare type = 'text_format' invece di area di testo. e format = 'editor_format'. Il codice sarà simile a questo.

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

Ecco il mio:

$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,
);

Ho dovuto aggiungere il ['value'] al #default_value perché non è stato caricato dopo il salvataggio.

7x Riferimento API modulo

Il modulo WYSIWYG è solo un modo per utilizzare uno dei tanti editor wysiwyg disponibili. Una volta installato il modulo wysiwyg ( http://drupal.org/project/wysiwyg ), vai alla configurazione del modulo (admin/config/content/wysiwyg). Saranno disponibili istruzioni di installazione per molti editor Wysiwyg. Ad esempio, per FCKeditor, dice quanto segue:

Estrarre l'archivio e copiarne il contenuto in una nuova cartella nella seguente posizione: sites/all/libraries/fckeditor

Quindi la libreria attuale può essere trovata su: sites/all/libraries/fckeditor/fckeditor.js

Quindi, scarica l'editor, estrai l'archivio nella directory indicata. Una volta fatto questo (supponendo che tu l'abbia fatto correttamente), sarai in grado di cambiare l'editor per determinati formati di input nella schermata di configurazione di Wysiwyg. Sarà quindi necessario assegnare diverse operazioni per ciascun tipo (HTML filtrato, HTML completo, ecc.). Fai clic su "Modifica" sotto operazioni all'interno di admin/config/content/wysiwyg nella riga per qualsiasi formato di input che ti interessa. Da qui, controlla quali pulsanti vuoi.

0
mrryanjohnston

Non sembra possibile con Wysiwyg versione 7.x-2, ma il generatore di moduli per le impostazioni del profilo utilizza il seguente array:

  $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',
    // ...
  );

L'indice dell'array "access_pages" consentirebbe di impostare per quali pagine viene mostrato l'editor, ma il modulo non fornisce alcun campo modulo per modificare quel codice, né alcuna funzione utilizza quel valore.

È possibile che il valore sia stato utilizzato nelle versioni precedenti e che il codice per gestirlo sia ancora in fase di porting o che tale opzione sia stata introdotta nelle versioni successive del modulo.

0
kiamlaluno