Drupal9.4.7自定义主题下评论区无法上传图片

  Drupal9.4.7环境的自定义主题中,给予不同角色的用户评论权限后,他们评论时无法在编辑区上传图片,并且给出了如下错误提示:
 
An error occurred while attempting to process /editor/dialog/image/full_html?_wrapper_format=drupal_modal&ajax_form=1&_wrapper_format=drupal_ajax: ajax.$form.ajaxSubmit is not a function
 
  白龙网需要说明的是,这个错误仅仅出现在评论区的编辑框中,而内容类型发布文章中的ckedit编辑器是可以正常上传图片的。尝试解决相关依赖的方式,最终未能解决这个BUG。
 
  最后只能另辟蹊径,安装了第三方模块图片管理工具imce,然后在“管理->配置->Text-formats-and-editors”中把Full-HTML设置为默认编辑框,接着在Full-HTML编辑器把上传图片的imce功能配置到编辑框中,同时指定对应用户可以使用Full-HTML编辑框。
 
  如此配置后,整站所有Full-HTML编辑框中就会多出一个imce上传文件的功能。有权限的用户,就可以在评论区通过imce上传图片,回复文字了。有关imce模块的使用方法,可以参考《Drupal9的imce模块:文件上传管理器》一文。
 
  另外,需要补充说明一下。Drupal9.4.7版本下,在自定义主题中,通过系统自带的article内容类型发布文章后,其后面默认是自带评论框的。只不过,需要设置一下富文本编辑器的访问权限:匿名用户、授权用户等是否可访问评论、发布评论、编辑评论、审核评论等。
 
  当然,如果是自定义的内容类型,那么只需要在该内容类型中添加一个Comments类型的字段,然在comments模块中配置指定用户可以访问/发布/编辑评论,接着在ckedit配置环境中指定哪些用户可以使用编辑框,就可以把评论框调用到该内容类型中发布的文章后。另外,也可以通过“管理->结构->评论类型->默认评论类型”添加字段,用来丰富评论者想要提交的不同类型的内容。例如,添加静态的地址、昵称、点击量等内容。
 
  综上所述,评论功能的实现涉及内容类型、评论类型、文本编辑框、模块权限等环节的配置。由此看来,要想搭建一个带评论的问答系统,着实要下一番功夫。其实,这篇文章也从另外一个角度阐述了如何在自定义主题中实现评论的功能,如何搭建一个可发可回复图文的问答系统。