【问题标题】:Customize WebForm module in Drupal在 Drupal 中自定义 WebForm 模块
【发布时间】:2009-04-23 18:37:35
【问题描述】:

我也是 Drupal 6.10 CMS 和 PHP 的新手。我正在使用drupal 创建我的网站,我发现了一个名为Webform 的模块,我喜欢它,创建具有不同类型字段和文件上传的表单非常容易。我不知道的一件事是如何在所有字段之前添加富文本。类似于表格介绍之类的东西。该模块有“描述”字段,它将文本显示为纯文本,但其中没有富文本。

我可以用什么来实现这一点。是否可以在那里对 html 进行硬编码,或者是否有任何其他模块可以允许这样做?

谢谢

【问题讨论】:

    标签: php content-management-system drupal-6 module richtext


    【解决方案1】:

    “描述”字段的值通过_webform_filter_descriptions() 传递。这个函数有一个$strict参数,默认为TRUE,它决定了描述是否通过filter_xss()过滤。 filter_xss() 允许一些html:

    'a', 'em', 'strong', 'cite', 'code', 'ul'、'ol'、'li'、'dl'、'dt'、'dd'

    因此您可以将“富文本”html 限制为这些元素,或者修改 _webform_filter_descriptions(),将 $strict 设置为 FALSE。如果您是后者,请注意安全隐患(有权创建网络表单描述的用户可能会输入恶意 html - 这是 filter_xss() 所保护的)。

    【讨论】:

      【解决方案2】:

      我认为您需要做的就是将“输入格式”设置为“完整 html”,然后您就可以使用任何您想要设置文本样式的 HTML/CSS 标签。

      【讨论】:

        【解决方案3】:

        您可以通过在创建新字段时从下拉选项中创建一个表单组件MARKUP”来实现此目的。

        从这部分开始,您可以根据需要在此框中放置 html 和 php

        您还可以选择输入格式以更好地控制您希望如何使用此元素。

        【讨论】:

          【解决方案4】:

          正如 OP 所说,“确认”框与所见即所得编辑器工具栏一起显示,但“描述”框没有。

          处理此问题的最简单方法是在描述框中手动编写所需的 HTML。虽然没有任何地方说您可以做到这一点,但您可以做到,而且有效。

          【讨论】:

            【解决方案5】:

            这是我写的关于让自定义代码与 Webform 一起运行的简短方法。 它详细介绍了编写自定义模块、复制 Webform 模板以匹配 nodeID 以及添加自定义 javascript/jquery 以进行表单处理。

            http://docs.quantact.com/drupal-webform-custom-php-code

            【讨论】:

            • 也许你也可以在这里写答案,而不是仅仅给出一个链接?
            猜你喜欢
            • 2021-08-31
            • 1970-01-01
            • 2018-11-28
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-07-27
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多