使用drupal9的webform模块开发在线留言表单时,白龙网发现webform表单中没有图片、文件、视频、音频类型的字段,导致用户无法在表单中上传图片、文件、音频、视频等多媒体内容。
研究发现,实际上drupal9已经为webform表单预留了图片、文件、音频、视频类型的多媒体字段。只需要在settings.php配置文件中启用该功能,即可在webform表单中使用图片、文件、音频、视频类型的多媒体字段。
一、模块配置
下载、安装webform模块,并启用Webform、WebformUI;
二、配置目录
1.打开\htdocs\sites\default\settings.php文件,找到并配置接收图片的目录为sites/default/files/privates;即:
$settings['file_private_path'] = 'sites/default/files/privates';
2.更新缓存后,在“管理->配置->文件系统”界面,你会发现“Private_file_system_path”由“Not_Set”变成了“sites/default/files/privates”。
三、添加字段
进入“管理->结构->webfomrs->在线留言->build”界面,点击“Add_element”,在弹出的窗口中,你会发现这里就增加了“FILE_UPLOAD_ELEMENTS”,例如:图片、文件、视频、音频等多媒体类型的字段等;
然后,我们给在线留言表单添加一个图片类型的字段,同时可以设置图片的类型如jpg,png等。
四、查看效果
设置相关参数,逐个保存,重建缓存后,刷新前端页面,发现现在的在线留言表单已经增加上传图片的字段。
综上所述,给在线留言表单添加图片类型的字段,关键在于要开启私有文件系统路径,用以承载用户上传的图片;之后,drupal会自动给webform模块添加图片、文件、音频、视频等类型的多媒体字段,进而实现用户可通过表单上传图片的需求。