utexas/utexas_qualtrics_filter

自定义文本过滤器,允许 Qualtrics 表单嵌入到 WYSIWYG 字段

安装次数: 112,618

依赖项: 0

建议者: 0

安全: 0

星标: 1

关注者: 4

分支: 0

语言:JavaScript

类型:Drupal 自定义模块


README

这是一个 Drupal 模块,提供文本格式过滤器,可以将 Qualtrics 表单嵌入到 WYSIWYG 字段。

完整文档可以在以下地址找到:https://drupalkit.its.utexas.edu/docs/content/embedding_qualtrics_forms.html

文本格式过滤器的预期短代码语法

提供的短代码语法遵循以下模式

[embed]URL_HERE | height:HEIGHT_HERE | title:TITLE_HERE[/embed]

文本格式过滤器将输出以下内容

<iframe src="URL_HERE" scrolling="auto" name="Qualtrics" title="TITLE_HERE" class="qualtrics-form" id="Qualtrics" width="100%" height="HEIGHT_HERE" frameborder="no" align="middle"></iframe>

标题和高度值是可选的。

CKEditor 插件的开发和维护说明

除了提供将短代码语法转换为 iframe 标记的文本格式过滤器外,此模块还包括一个 CKEditor 插件,该插件在模态窗口中提供了一个表单,用于输入 Qualtrics 信息。

请先阅读

此插件于 2022 年由 WCMS 团队创建。该插件本身主要基于以下示例 缩写插件,版本 2

虽然插件可以用纯 JavaScript 编写,但所有文档都使用 TypeScript。TypeScript 文件必须编译成插件才能使用,并将其集成到 Drupal 的 CKEditor 实例中作为独立插件时,需要特定的编译过程。

可以在 Drupal 的背景下开发自定义插件,遵循以下模式 开发自定义插件。一个 自定义检查器 可以帮助检查 CKEditor 接口的模型和视图。 但是,对于 Drupal 中的集成,通用 CKEditor 文档中提供的编译过程将不起作用;相反,您需要一个 DLL 构建 来创建独立插件。

开发

要修改 Qualtrics 插件本身

  1. 像平常一样将此模块添加并安装到 Drupal 网站中。
  2. 切换到 js/ckeditor5_plugins/qualtrics
  3. src/ 目录中进行所需的更改。
  4. 运行以下命令以构建可分发 JS
npm install
yarn install
yarn run build
  1. 运行 drush cr

架构概述

├── index.js --> Entrypoint for build process (nonfunctional)
├── src
│   ├── qualtricsform.js --> Business logic for rendering & validating form
│   └── qualtrics.js --> Business logic for displaying the button & downcasting
└── theme
    ├── css
    │   └── form.css --> Minor tweaks to the form in the modal
    └── icons
        └── qualtrics.svg --> The plugin icon
├── build
│   └── qualtrics.js --> The DLL, used by CKEditor