将所见即所得附加到Drupal表单


12

使用自定义的Drupal表单,如何使用WYSIWYG模块将WYSIWYG功能附加到文本区域?


我发现moon.watcher和Dylan Tack提交的解决方案效果很好。

Answers:


2

回顾一下Drupal 7的适应症(对drupal 6的适应症很少)http://drupal.org/node/1031160。特别是关于如何在drupal 7的textarea中显示编辑器,因此我想这可能会很有用(似乎最后一条注释已通过测试)。

替代/使用所见即所得,可能可以替代执行此操作。



7

您应该使用type ='text_format'而不是文本区域。并且format ='editor_format'。该代码将如下所示。

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

这是正确的选择。但我不能以表格形式获得safe_value。
大师

4

这是我的:

$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参考


1
确实,variable_get('foo', '')['value']后缀确实是必需的。
leymannx

0

所见即所得模块只是使用众多所见即所得编辑器之一的一种方式。一旦安装了所见即所得模块(http://drupal.org/project/wysiwyg),请转到该模块的配置(admin / config / content / wysiwyg)。将提供许多所见即所得编辑器的安装说明。例如,对于FCKeditor,它表示以下内容:

解压缩存档并将其内容复制到以下位置的新文件夹中:sites / all / libraries / fckeditor

因此,可以在以下位置找到实际的库:sites / all / libraries / fckeditor / fckeditor.js

因此,下载编辑器,将存档解压缩到给定目录。一旦完成此操作(假设您已正确完成),就可以在“所见即所得”配置屏幕上更改给定输入格式的编辑器。然后,您需要为每种类型(过滤的HTML,完整的HTML等)分配不同的操作。单击admin / config / content /所见即所得行中的操作下的“编辑”,以查找所需的任何输入格式。从此处,检查所需的按钮。


CKEditor也可以“独立”安装,而无需使用WYSIWYG编辑器。请参阅drupal.org/project/ckeditor
Jorrit Schippers

0

所见即所得的版本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”数组索引将允许设置显示编辑器的页面,但是模块不提供任何表单字段来更改该代码,也没有任何函数使用该值。

可能是该值在先前版本中使用过,并且仍在移植处理该值的代码,或者该选项已在模块的下一版本中引入。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.